how to plot the directed graph using NxN matrix in matlab
902 views (last 30 days)
Abdulhakim Alezzi on 19 Mar 2020
Hi friends ,
I have a matrix with 30x30 , where the first row and first column representing the nodes just as shown below .
1- I want to plot a directed graph between the nodes using the edges values between the nodes
2- I want to to apply the threshould (thr = 0.2) to plot the the graphs using the edges above 0.2.
Note: the columns are the sources and the rows are the receivers.
Fp1 Fp2 F7 F3
Fp1 0.409 0.0146 0.009 0.0069
Fp2 0.55 0.512 0.005 0.0309
F7 0.035 0.001 0.705 0.0010
F3 0.025 0.061 0.44 0.534
Hari Krishna Ravuri on 23 Mar 2020
Edited: Hari Krishna Ravuri on 23 Mar 2020
I understand that you want to plot a directed simple graph.
“I want to plot a directed graph between the nodes using the edges values between the nodes”
You can create a directed graph by passing the adjacency matrix to digraph function as shown below
G = digraph([1 1 2],[2 3 1])
You may now plot a directed graph by passing the directed graph to the plot function as shown below
“I want to apply the threshold (thr = 0.2) to plot the graphs using the edges above 0.2”
You may consider pre-processing the adjacency matrix before creating a directed graph using digraph. You may consider writing a small script using arrayfun for pre-processing. The syntax of arrayfunc is
B = arrayfun(func, A)
arrayfun(func, A) applies the function func to the elements of A, one element at a time.Here, func is a function handle and A is an array.
Hope this helps!