Обновить края networkx с помощью флажка в боке - PullRequest
0 голосов
/ 04 августа 2020

В следующем сценарии я беру примерную сеть из Netowrkx, связываю атрибут с краями и рисую его в боке. Как связать флажок с обратным вызовом Custom JS, чтобы отображались только края выбранных типов (интерактивно)?


import networkx as nx
import numpy as np
from bokeh.io import output_file, show
from bokeh.plotting import figure, from_networkx
from bokeh.layouts import row
from bokeh.models.widgets import CheckboxGroup
from bokeh.models import MultiLine
from bokeh.palettes import Spectral4

G = nx.karate_club_graph()

plot = figure(title="Attempting to show selected edges", x_range=(-1.1,1.1), y_range=(-1.1,1.1),
              tools="", toolbar_location=None)

graph = from_networkx(G, nx.spring_layout, scale=1, center=(0,0))
plot.renderers.append(graph)
# create random property

properties = ['Type1', 'Type2', 'Type3']
nedge = G.number_of_edges()
nx.set_edge_attributes(G, np.random.choice(properties, size=nedge), 'type')

output_file("networkx_graph.html")

checkbox_button_group = CheckboxGroup(labels=properties, active=[])
show(row(plot, checkbox_button_group))

...