我必须使用python iGraph绘制图形,我想知道我是否可以预定义节点的x-cordinates和y-cordinates,如果是,如何?
答案 0 :(得分:3)
只需提供layout
函数的plot
参数的坐标列表。 E.g:
>>> g = Graph.Ring(4, circular=False)
>>> layout = [(0,0), (0,1), (1,1), (1,0)]
>>> plot(g, layout=layout)
请注意,igraph将沿X轴和Y轴独立重新缩放布局,以确保它适合绘图的边界框。如果您具有自定义布局,并且希望确保保留布局的宽高比,则还必须明确指定边界框和边距。例如,如果您的布局宽度是其高度的两倍,那么您需要一个也是两倍宽度的绘图。一个800 x 400像素的边界框可以:
>>> plot(g, layout=layout, margin=0, bbox=(800,400))