Modify Nodes and Edges of GraphPlot

10 vues (au cours des 30 derniers jours)
Ephraim Bryski
Ephraim Bryski le 7 Jan 2021
Hi. I would like to animate a graphplot. Nodes and edges should be added and removed over time, and the coordinates should be modified. Is there a way of modifying the graphplot without replotting (which I've noticed takes a lot of time)? Thanks.

Réponse acceptée

Christine Tobler
Christine Tobler le 8 Jan 2021
I'm afraid that's not possible with GraphPlot.
For performance, you could use scatter to plot all the nodes, and plot to plot all edges connecting these nodes as straight lines, this would be much more efficient - of course it loses some of the additional features, like placement of the nodes in an automatic graph plot.
Or maybe you could safe the plot of each timestep ahead of time and then play the animation based on this precomputed set?
In GraphPlot, in terms of node placement, if you don't already know the coordinates at which the nodes should be placed in each timestep, you could try feeding the coordinates of the last timestep to the 'XStart', 'YStart' options for the 'force' layout, which would make the nodes in the next step be in a more similar place to the previous one. Changing 'Iterations' to a smaller number could also be helpful there.

Plus de réponses (0)

Catégories

En savoir plus sur Graph and Network Algorithms dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by