在 python 上使用 graphviz 时如何设置节点的大小?
How can I set the sizes of nodes when using graphviz on python?
我现在正在使用 python 2.7 和 graphviz 从我的数据集中绘制类似集群的图。
每个集群都以这种类型表示-->[avg, num]
其中"avg"代表该簇中点的平均值
"num"代表这个簇中的点数
我想创建一个每个节点都有不同大小的图,这取决于 "num" 变量,就像我们可以用 networkx
做的一样
node_sizes = []
for n in nodes:
node_sizes.append( 100 * n )
g = nx.Graph()
g.add_nodes_from(nodes)
nx.draw_random(g, node_size = node_sizes)
我之所以使用 graphviz 而不是 networkx 是因为我真的不想手动设置节点的位置,而 graphviz 中的 neato 或 circo 之类的引擎非常有用。
感谢所有评论和帮助。 T^T
您可以设置节点大小如下:
import graphviz as gv
g = gv.Graph(format='png')
for i in range(5):
g.node(str(i), **{'width':str(i), 'height':str(i)})
g.render('example')
产生:
我现在正在使用 python 2.7 和 graphviz 从我的数据集中绘制类似集群的图。 每个集群都以这种类型表示-->[avg, num] 其中"avg"代表该簇中点的平均值 "num"代表这个簇中的点数
我想创建一个每个节点都有不同大小的图,这取决于 "num" 变量,就像我们可以用 networkx
做的一样node_sizes = []
for n in nodes:
node_sizes.append( 100 * n )
g = nx.Graph()
g.add_nodes_from(nodes)
nx.draw_random(g, node_size = node_sizes)
我之所以使用 graphviz 而不是 networkx 是因为我真的不想手动设置节点的位置,而 graphviz 中的 neato 或 circo 之类的引擎非常有用。
感谢所有评论和帮助。 T^T
您可以设置节点大小如下:
import graphviz as gv
g = gv.Graph(format='png')
for i in range(5):
g.node(str(i), **{'width':str(i), 'height':str(i)})
g.render('example')
产生: