igraph 1.0中用于Fruchterman-Reingold布局的maxdelta等效值是多少?

3
给定一个时间图(每个边缘都有一个时间属性),我有一个脚本来使用Fruchterman-Reingold布局绘制图形的演变。我的脚本基于这个例子:Temporal Networks with igraph and R with 20 lines of code
其中一个技巧是从上一个快照的布局开始计算当前快照的布局,然后使用限制节点位移,以便在快照之间产生平滑的过渡效果。这里是一个动画示例:https://vimeo.com/53071346 在igraph 1.0中,布局函数变成了,而参数消失了,快照之间的转换也太过突兀。
我们如何在igraph 1.0中实现相同的效果?
1个回答

2
正文:
正如您所注意到的,Fruchterman-Reingold布局已经从头开始在igraph 1.0中进行了重写,并且maxdelta参数作为“副作用”消失了(新实现不支持它)。我不知道新实现是否仅因为没有时间实现还是因为存在阻止实现的固有限制,但无论哪种情况,请在GitHub上提交问题。我不能做出任何承诺,因为我没有编写该代码的那部分,但也许它很快就会重新添加。
与此同时,通过查看算法的源代码, 看起来温度参数作为最大位移的限制因素。您可以尝试将最大位移发送为start.temp并将迭代次数设置为1-这将限制沿X和Y轴的位移为start.temp
另一种选择是使用layout.graphopt()函数,该函数似乎支持直接使用max.sa.movement参数限制最大位移。

谢谢Tamás,与此同时我发现的另一个解决方案是仅使用一个布局(最终布局)来进行所有动画。虽然不是很惊人,但能完成任务 :) - alberto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接