- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在尝试使用 NetworkX 和 graphviz_layout 绘制包含许多节点的图形时遇到了问题。更具体地说,传递给 nx.graphviz_layout 的参数根本没有帮助。附件是我使用的代码:
G=some_graph()
import matplotlib.pyplot as plt
plt.figure(figsize=(32,32))
# use graphviz to find radial layout
pos=nx.graphviz_layout(G,prog="dot",
root=1000,
args='-splines=true -nodesep=0.6 -overlap=scalexy'
)
nx.draw(G,pos,
with_labels=True,
alpha=0.5,
node_size=600,
font_size=10
)
plt.savefig("imagenet_layout.png")
无论我如何更改 nx.graphviz_layout 中的“args”,输出图像都是相同的,并且所有节点都相互重叠。有人可以帮我吗?谢谢!
最佳答案
对我来说,似乎为了给 prog
提供参数,您需要使用格式“-G”+“argsname=x”。我注意到在示例中他们给出了 docs arg epsilon 为G.draw('test.ps',prog='twopi',args='-Gepsilon=1')
。所以我尝试了如下所示的模式。我只是在参数前面添加了 G。现在,这些论点会根据您使用的 prog 的不同而有很大差异,因此您肯定想使用“点”来完成您想要完成的事情。您可以看到所有可能的参数以及它们如何与每个 prog
一起使用 here .对于我的海豚,我需要让 nodesep=0.01。
G=some_graph()
import matplotlib.pyplot as plt
plt.figure(figsize=(32,32))
# use graphviz to find radial layout
pos=nx.graphviz_layout(G,prog="dot",
root=1000,
args='-Gsplines=true -Gnodesep=0.6 -Goverlap=scalexy'
)
nx.draw(G,pos,
with_labels=True,
alpha=0.5,
node_size=600,
font_size=10
)
plt.savefig("imagenet_layout.png")
这是我的图表在有和没有 args 的情况下与代码的比较。首先没有参数。
A = nx.nx_agraph.to_agraph(G) # convert to a graphviz graph
A.layout(prog='neato') # neato layout
#A.draw('test3.pdf')
A.draw('test3.png' )
带参数
A = nx.nx_agraph.to_agraph(G) # convert to a graphviz graph
A.layout(prog='dot') # neato layout
#A.draw('test3.pdf')
A.draw('test3.png',args='-Gnodesep=0.01 -Gfont_size=1', prog='dot' )
一旦我让参数生效,您就可以看到图像不同了。
关于python - NetworkX graphviz_layout 不工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30042584/
我在尝试使用 NetworkX 和 graphviz_layout 绘制包含许多节点的图形时遇到了问题。更具体地说,传递给 nx.graphviz_layout 的参数根本没有帮助。附件是我使用的代码
我正在尝试使用 networkx 绘制加权图。我正在使用 graphviz_layout 生成顶点的位置。我希望图中的边长与我使用的边权重成正比。以下是我实现此目的的代码片段: import netw
在 python 中,使用 networkx。我可以绘制一棵垂直树: g=nx.balanced_tree(2,4) pos = nx.graphviz_layout(g, prog='d
每个人都无法找到如何将权重列表的属性名称传递给 networkx 中的 graphviz_layout。像这样的东西: nx.spring_layout(G, weight='weight.sum')
我正在使用《Python 自然语言处理》一书(“www.nltk.org/book”)自学 Python 和 NLTK。 我在 NetworkX 上被困在第 4 章第 4 部分第 8 部分。当我尝试运
我正在尝试使用 networkx 1.11 绘制一些 DAG,但遇到了一些错误,这是测试: import networkx as nx print nx.__version__ G = nx.DiGr
我是一名优秀的程序员,十分优秀!