如何在networkx中画一棵树更漂亮

2024-04-25 00:53:23 发布

您现在位置:Python中文网/ 问答频道 /正文

如果我用networkx制作一棵树并绘制它,节点会重叠。有没有办法画出这样就没有重叠了?在

import matplotlib.pyplot as plt
import networkx as nx
T = nx.generators.balanced_tree(2, 5)
nx.draw(T)
plt.show()

enter image description here


Tags: importnetworkxtree节点matplotlibasshow绘制
2条回答

我不是这方面的专家,但是这里的代码使用了pydot库及其graph_viz依赖关系。这些库随Anaconda Python一起提供,但默认情况下不会安装,因此首先从命令提示符执行以下操作:

conda install pydot

下面是改编自Circular Tree的代码。在

^{pr2}$

如果将窗口调整为方形,则结果是

enter image description here

或者,如果您喜欢自顶向下的树,您可以将代码中的字符串"twopi"替换为"dot",如果您使生成的窗口变宽,您将得到

enter image description here

另外,如果使用字符串"circo",并使窗口变宽,则可以得到

enter image description here

如果您想在没有附加库的情况下执行此操作,请查看以下答案,它显示了一种在networkx中获得分层树布局的方法:

https://stackoverflow.com/a/29597209/2966723

我计划在不久的将来给networkx添加一个稍微修改一下的版本。在

相关问题 更多 >