How can I plot curved lines in a graph plot?
7 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
The 'layered' layout of the plot function for a graph makes good looking plots (Figure A).
H = digraph(Adjacencymatrix);
h = plot(H,'Layout','layered','AssignLayers','alap','Sources',numel(Lind),'Sinks',leafind,'EdgeCData',1.1-H.Edges.Weight./7,'LineWidth',1,'NodeLabel',names(Lind));
However, I need to move some of the nodes in the graph plot around.
As soon as I change XData, YData of the plot, the edges of the graph plot become straight. (Figure B)
A)
B)![straight.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/204087/straight.jpeg)
![curved.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/204086/curved.jpeg)
![straight.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/204087/straight.jpeg)
plot() does not allow me to combine XData, YData with 'Layout'.
Exporting the figure to svg/pdf/eps does not preserve edge/node relationships, so I cannot easily move nodes in Inkscape either.
How can I get both
A) a graph plot with curved edges, and
B) determine / change some of the node positions
Thanks for helping
1 Commento
Ben Ward
il 2 Apr 2019
Sorry I don't have the answer, as I am looking for the same thing myself. I thought I would give this a bump in case anyone else sees it.
Risposte (1)
Rostislav Teryaev
il 2 Apr 2019
layout(h,'layered')
try using this after changing XData and YData
0 Commenti
Vedere anche
Categorie
Scopri di più su 2-D and 3-D Plots in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!