我从散景开始。我画了一个网络图。有用。 我想在“节点”上拖放以使其在绘图中移动,以使节点关系更清晰:
到目前为止,我有以下内容(只写了重要的几行):
df = pd.read_csv('data.csv', sep=" ", header=None)
G = nx.from_pandas_edgelist(d, 0, 1)
plot = Plot(background_fill_color="lightgrey",
plot_width=800, plot_height=600,
x_range=Range1d(-0.5, 0.5), y_range=Range1d(-0.5, 0.5))
graph_renderer = from_networkx(
G, nx.spring_layout, scale=1, center=(0, 0))
# here is the issue:
plot.add_tools(PointDrawTool(
renderers=[graph_renderer], empty_value='black'))
plot.renderers.append(graph_renderer)
...
PointDrawTool
是启用拖放的工具。以下文档说它需要渲染器(我假设:graph_renderer
),但出现错误AttributeError: 'GraphRenderer' object has no attribute 'glyph'
一些指导表示赞赏。
答案 0 :(得分:0)
当您替换
时,一切在Bokeh v1.1.0中都可以正常工作plot.add_tools(PointDrawTool(renderers = [graph_renderer], empty_value='black'))
具有:
plot.add_tools(PointDrawTool(renderers = [graph_renderer.node_renderer], empty_value = 'black'))