gpt4 book ai didi

python - 如何在networkx中画出更漂亮的树

转载 作者:行者123 更新时间:2023-11-28 20:55:12 28 4
gpt4 key购买 nike

如果我使用 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

最佳答案

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

conda install pydot

然后这里是改编自Circular Tree的代码.

import matplotlib.pyplot as plt
import networkx as nx
import pydot
from networkx.drawing.nx_pydot import graphviz_layout

T = nx.balanced_tree(2, 5)

pos = graphviz_layout(T, prog="twopi")
nx.draw(T, pos)
plt.show()

如果把窗口调整成正方形,结果是

enter image description here

或者,如果您更喜欢自上而下的树,则可以将该代码中的字符串 "twopi" 替换为 "dot",并且如果您生成结果你得到的窗口更宽

enter image description here

此外,如果您改用字符串 "circo" 并使窗口变宽,您会得到

enter image description here

关于python - 如何在networkx中画出更漂亮的树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57512155/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com