2
import pygraphviz as pgv
A = pgv.AGraph()
A.add_node('Alice')
A.add_node('Emma')
A.add_node('John')
A.add_edge('Alice', 'Emma')
A.add_edge('Alice', 'John')
A.add_edge('Emma', 'John')
print A.string()
print "Wrote simple.dot"
A.write('simple.dot')  # write to simple.dot
B = pgv.AGraph('simple.dot')  # create a new graph from file
B.layout()  # layout with default (neato)
B.draw('simple.png')  # draw png
print 'Wrote simple.png'

図にも表示されるエッジに重みを追加したいと思います。

4

1 に答える 1

9

エッジを作成するときに、エッジに属性を追加できます。

A.add_edge('Alice', 'Emma', weight=5)

または、後で次のように設定できます。

edge = A.get_edge('Alice', 'Emma')
edge.attr['weight'] = 5

エッジにテキスト情報を追加するには、label代わりに属性を指定します。

edge = A.get_edge('Alice', 'Emma')
edge.attr['label'] = '5'

すべての属性は内部的に文字列として格納されますが、GraphVizはこれらを特定のタイプとして解釈します。属性のドキュメントを参照してください。

于 2013-03-16T23:49:49.717 に答える