使用pydot实时数据可视化

时间:2015-03-12 14:30:56

标签: python visualization data-visualization pydot

我一直在使用pydot项目来生成显示不同数据之间关系的图表。

import pydot 

graph = pydot.Dot(graph_type='graph') 

for i in range(3):
 edge = pydot.Edge("Root", "Connection%d" % i)
 graph.add_edge(edge)

conn_num = 0
for i in range(3):
 for j in range(2):
  edge = pydot.Edge("Connection%d" % i, "Sub-connection%d" % conn_num)
  graph.add_edge(edge)
  conn_num  += 1

graph.write_png('graph.png')

运行上面的代码(取自here)会给我:enter image description here

问题

有没有办法可以配置pydot实时工作,还是有像pydot这样的类似项目可以实时制作图表?可以让我在数据到达时添加新边缘的东西。

1 个答案:

答案 0 :(得分:1)

Networkx是一个专门研究图形的python模块。对于可视化,它使用matplotlib。

在matplotlib中,您可以清除并重新绘制图像,也可以使用动画功能。清除和重新绘制对代码来说是微不足道的。我没有使用动画功能,但我希望以更复杂的代码为代价获得更快/更漂亮的结果。

networkx用法示例: how to draw directed graphs using networkx in python?(或者您可以使用实际文档:https://networkx.github.io/

关于SE的matplotlib更新问题:Dynamically updating plot in matplotlib