MATLAB: How to make a line between random nodes connection

clusteringrandom

Hi guys,
How to make a connection between random nodes and select 1 of them as a cluster head?
numNodes=10;
p = rand(numNodes,2);
labels = cellstr( num2str([1:numNodes]') );
plot(p(:,1),p(:,2),'rx')
text(p(:,1), p(:,2), labels, 'VerticalAlignment','bottom', ...
'HorizontalAlignment','right')
The figure

Best Answer

numNodes = 10;
numEdge = 15; %maximum, really. Random edges are generated and there could be duplicates
p = rand(numNodes,2);
st = unique( sort( randi(numNodes, numEdge, 2), 2), 'rows');
G = graph(st(:,1), st(:,2));
gp = plot(G);
gp.XData = p(:,1); gp.YData = p(:,2);
Related Question