Clear Filters
Clear Filters

Plot multiple edge sets on one graph?

3 views (last 30 days)
I have multiple adjacency matrices of digraphs that correspond to different relations over the same set of nodes. Is there a clean way for me to plot the different graphs using the same set of nodes?

Accepted Answer

Chunru
Chunru on 28 Aug 2022
% Create a graph
A = magic(4);
A(A>10) = 0;
names = {'alpha' 'beta' 'gamma' 'delta'};
G = digraph(A,names,'omitselfloops');
h1=plot(G);
% Now different edges
A(1,3)=0; A(1,2)=0;
G2 = digraph(A,names,'omitselfloops');
figure;
h2 = plot(G2)
h2 =
GraphPlot with properties: NodeColor: [0 0.4470 0.7410] MarkerSize: 4 Marker: 'o' EdgeColor: [0 0.4470 0.7410] LineWidth: 0.5000 LineStyle: '-' NodeLabel: {'alpha' 'beta' 'gamma' 'delta'} EdgeLabel: {} XData: [-0.4581 0.4581 0.9803 -0.9803] YData: [0.4581 -0.4581 0.9803 -0.9803] ZData: [0 0 0 0] Show all properties
% Ensure the node position does not change
h2.XData = h1.XData;
h2.YData = h1.YData;

More Answers (0)

Categories

Find more on Graph and Network Algorithms in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!