可视化 - 圆的大小与项的值成比例

时间:2013-09-07 21:03:51

标签: graph visualization graphviz diagram dot

我熟悉Graphviz并想知道是否可以生成如下图所示的图表/图表(不确定你称之为什么)。如果没有,有谁知道什么是一个很好的开源框架呢? (pref,C ++,Java或Python)。

enter image description here

1 个答案:

答案 0 :(得分:3)

根据Many Eyes,这是一张气泡图。他们说:

  

对于具有数十到数百个值的数据集,或者具有相差几个数量级的值,它尤其有用。

     

...

     

要在图表上查看圆圈的确切值,请将鼠标移到它上面。如果要绘制多个维度,请使用菜单选择要显示的维度。如果您的数据集包含多个数字列,则可以使用图表底部的菜单选择基于圆圈大小的列。

因此,任何带有大量气泡的演示文稿(特别是有许多小气泡)都必须是动态的,以响应鼠标。

我使用气泡图的惯常做法是显示三个或四个变量(x,y和另一个通过气泡大小的变量,也许还有另一个带有气泡颜色或阴影的变量)。通过动画,您可以随时间显示开发 - 请参阅GapMinderFlowingData为如何在R中制作静态气泡图提供了一个很好的示例。

在问题所示的例子中,气泡似乎位于某种程度上,以使类似的公司紧密相连。即便如此,我还不清楚确切的设计标准。例如,我预计大众汽车将比辉瑞更接近通用汽车(如果采用一些公司相似度来衡量气泡),但在此图中并非如此。

您可以使用Graphviz生成气泡图的静态版本,但这样做会涉及很多工作。您必须预处理数据以计算相似性矩阵,从该矩阵获得边缘权重,为每个气泡分配颜色和大小,然后让预处理脚本编写隐藏所有边缘的Graphviz文件,并通过{{1运行Graphviz文件绘制它。