python 网页可视化_python – 网页上的大图形可视化:networkx,vivagraph

本文介绍了如何使用Python的networkx库和JavaScript的Vivagraph库来可视化大型图形,特别是5000个节点和5000个链接的图表。通过预计算节点位置以减少浏览器的工作量,但在网页上实现良好的布局仍面临挑战。作者分享了相关代码,并寻求优化图形渲染的方法。
摘要由CSDN通过智能技术生成

我有一个大约5000个节点和5000个链接的图表,我可以通过

the vivagraph javascript library在Chrome中可视化(webgl比svg更快 – 例如在d3中).

我的工作流程是:

>使用networkx python库构建并将结果输出为json文件.

>加载json并使用the vivagraph javascript library构建图形.

>节点位置由js库计算

问题是渲染具有良好定位节点的布局需要时间.

我的方法是预先计算networkx中的节点位置.这种方法的真正好处在于它最大限度地减少了客户端在浏览器上的工作.但我无法在网页上取得好成绩.我需要这一步的帮助.

节点位置计算的相关python代码是:

## positionning

try:

# Position nodes using Fruchterman-Reingold force-directed algorithm.

pos=nx.spring_layout(G)

for k,v in pos.iteritems():

# scaling tentative

# from small float like 0.5555 to higher values

# casting to int because precision is not important

pos[k] = [ int(i*1000) for i in v.tolist() ]

except Exception, e:

print "positionning failed"

raise

## setting positions

try:

# set position of nodes as a node attribute

# that

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值