Hi every one, I am a little bit new in matlab I would like to generate directed random graph using Matlab. That is a random directed graph with n nodes . That is How to generate a random network with a certain number of nodes in Matlab
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
M Shaka
am 9 Feb. 2018
Beantwortet: M Shaka
am 9 Feb. 2018
[G]= function(n) . . . return
0 Kommentare
Akzeptierte Antwort
Guillaume
am 9 Feb. 2018
With so little information the only thing we can do is point you to digraph. What is random about your graph? Is the number of edges fixed.
g = digraph(randi([0 n], n))
will generate a random directed graph with n node. It's unlikely to be pretty as it will have many edges (n*(n-1) edges on average).
5 Kommentare
Guillaume
am 9 Feb. 2018
As per the doc (link in my answer) digraph requires at least R2015b.
If you want to work with graphs, I strongly recommend upgrading to at least R2015b as it introduced lots of graph functions including the ability of easily plotting graphs.
For example, in just two lines:
g = digraph(max(randi([-60 10], 10), 0));
plot(g);
I've generated this:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/187756/image.png)
Steven Lord
am 9 Feb. 2018
FYI the sprand and sprandsym functions are also useful in generating random networks. That may be an easier to understand alternative than calling max(randi(... to generate a matrix with roughly a specific proportion of nonzero elements.
Weitere Antworten (1)
Siehe auch
Kategorien
Mehr zu Graph and Network Algorithms finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!