我怎样才能制作交互式网络图?

cas*_*ass 1 interactive networkx

我绘制了一个图形来突出显示气体网络中的气体流动和方向,例如在此处输入图像描述

然而,我希望使其具有互动性。我尝试了多种方法但都失败了,有没有想法开发这个?非常感谢!

bla*_*521 5

您可以使用pyvis包在静态 HTML 文件中获取交互式图表。

import networkx as nx
from pyvis.network import Network


# Create directed graph with networkx
G = nx.DiGraph()
G.add_nodes_from([
    ('1', {'namespace': ['1n'], 'workload': {1: '1w'}}),
    ('2', {'namespace': ['2n'], 'workload': '2w'}),
    ('3', {'namespace': ['3n'], 'workload': '3w'}),
])
G.add_edges_from([
    ('1', '2', {'weight': 1}),
    ('2', '1', {'weight': 1}),
    ('2', '3', {'weight': 5}),
])

# Plot with pyvis
net = Network(
    directed = True,
    select_menu = True, # Show part 1 in the plot (optional)
    filter_menu = True, # Show part 2 in the plot (optional)
)
net.show_buttons() # Show part 3 in the plot (optional)
net.from_nx(G) # Create directly from nx graph
net.show('test.html')
Run Code Online (Sandbox Code Playgroud)

输出 HTML 文件将显示以下内容:在此输入图像描述