【发布时间】:2016-11-05 20:46:05
【问题描述】:
我有一个图表,我使用 Louvain-Algorithm 实现从中提取社区:
clusters = g.community_multilevel( weights=None, return_levels=False)
然后我为每个社区应用不同的颜色:
new_cmap = ['#'+''.join([random.choice('0123456789abcdef') for x in range(6)]) for z in range(len(clusters))]
colors = {v: new_cmap[i] for i, c in enumerate(clusters) for v in c}
g.vs["color"] = [colors[e] for e in g.vs.indices]
最后我绘制了图表:
visual_style["layout"] = g.layout_fruchterman_reingold(weights=g.es["weight"], maxiter=1000, area=N ** 3, repulserad=N ** 3)
igraph.plot(g, **visual_style)
-
我的问题是:
有没有一种方法可以使用特定的布局来绘制四个社区中的每一个,而不是这个混合图?我想将图中不同区域的每个社区分开,以增加其内部结构的可见性以及连接社区的少数具有较高中介中心性的边?
我使用了
contract-vertices函数来帮助我进行可视化,但过于简化了,它只是将每个社区分组在一个点上,并且不允许可视化每个社区的内部结构。我是否以最佳方式使用“合同顶点”?
谢谢。
【问题讨论】: