中心化的可视化图[重复]

Posted

技术标签:

【中文标题】中心化的可视化图[重复]【英文标题】:Visualization graph by centralities [duplicate] 【发布时间】:2022-01-05 13:17:13 【问题描述】:

我在 python igraph 中计算了节点的中介中心性并将其保存在 csv 文件中。 现在我想通过中心点在 python 和 igraph 库或 gephi 中可视化它。

我该怎么做?

【问题讨论】:

您是否使用任何特定方法来计算python-igraph 中节点的介数中心性?我找不到任何东西,但我可以使用边缘的中心性来做一些可视化。 我使用了 g.betweenness()。以节点的中心性,我可以看到图形吗?????? 您可能想查看my comment 关于 Python 中交互式绘图igraph 的问题。在过去的几年里,很多事情都发生了变化。与以前的版本不同,您可以pip install python-igraph。但是,仅拥有 igraph 图还不够。您还需要pip install pycairo。我希望这也能解决。 谢谢,我读了你的评论。我是初学者,我对 python 了解不多。你能在 ig.plot() 中帮助我,必须放置哪些参数来可视化图形及其节点的大小代表它们的中心性? @mathfux “与 networkx 相比,igraph 在 Python 中是相当困难的事情。它没有像 networkx 那样记录在案。” 非常欢迎对 igraph 文档的贡献。 【参考方案1】:

这是一个例子:

from igraph import *
import numpy as np

g = Graph.Famous("Zachary")

gamma = 0.33
plot(g, 
     vertex_color=[round(x) for x in rescale(np.array(g.betweenness())**gamma, out_range=(0, 255))], 
     palette=GradientPalette('Midnight Blue', 'Light Pink'),
     vertex_size = 12,
     bbox = (300,300))

解释:

顶点颜色可以(以及其他方式)指定为整数,表示调色板中的索引。在这里,我在两种颜色之间使用了渐变调色板。调色板中元素的默认数量是 256,因此我们需要生成介于 0..255 之间的颜色索引。在 rescale 函数的帮助下,中介值被转换为这些值。

此外,我对具有指数gamma 的介数值使用了幂律变换,以实现从小值(大多数顶点)到大值(少数顶点)的更平滑过渡。

要根据介数改变顶点区域,您可以使用

plot(g, 
     vertex_size = (1 + np.array(g.betweenness())**0.5) * 3,
     bbox = (300,300))

指数0.5 确保与介数成正比的是面积而不是半径。将值加 1 可确保最小顶点大小。

【讨论】:

以上是关于中心化的可视化图[重复]的主要内容,如果未能解决你的问题,请参考以下文章

R将egor对象转换为igraph /使用可视化应用程序(错误:重复的顶点名称)

如何调整matplotlib图表图[重复]

恐怖主义离我们有多远?

基于Echarts+HTML5可视化数据大屏展示—电子商务公共服务平台大数据中心

基于Echarts+HTML5可视化数据大屏展示—电子商务公共服务平台大数据中心

滴滴出行大数据可视化,揭秘北京两千万人是这么上下班的!