【问题标题】:Whats wrong with the image scaling in igraph?igraph中的图像缩放有什么问题?
【发布时间】:2016-03-06 22:06:57
【问题描述】:

我在控制 igraph 完成的网络图中对象的大小时遇到​​问题。 plot 命令的文档说:

  • bbox::绘图的边界框。这必须是一个包含绘图所需宽度和高度的元组。默认绘图为 600 像素宽和 600 像素高。
  • arrow_size:如果图形是定向的,则边缘上箭头的大小(长度),相对于 15 像素。
  • vertex_size:以像素为单位的顶点大小

所以据我了解,所有这些参数都代表像素数。 因此,将它们全部乘以 2 的因子,我希望图像可以完全按此因子缩放。

考虑以下python中的最小示例:

from igraph import Graph, plot

def visualize(res=1.0):

    g=Graph([(0,1), (1,0)], directed=True)

    layout = g.layout_fruchterman_reingold()

    plot(g, target='plot.png', 
         layout=layout,
         bbox=(120*res,120*res),  
         vertex_size=5*res, 
         arrow_size=10*res)

这绘制了一个简单的图,
但是对于res=1.0res=2.0,箭头和顶点与图像大小相比变得更小。

这怎么可能?

【问题讨论】:

    标签: python plot resolution igraph


    【解决方案1】:

    只是一个疯狂的猜测,但笔画宽度可以解释差异吗?默认笔画宽度为 1 个单位,您似乎没有缩放笔画宽度。尝试在对plot()的调用中设置vertex_frame_width=res

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-09
      • 1970-01-01
      • 1970-01-01
      • 2017-12-28
      • 2020-04-28
      • 2017-12-28
      • 2012-05-18
      • 2011-09-22
      相关资源
      最近更新 更多