Bokeh - 为补丁图上的单个字形创建自定义 hovertool
Bokeh - create custom hovertool for a single glyph on patches figure
我根据 the texas.py example Bokeh 的文档大致创建了一张地图。我正在尝试在具有自己的鼠标悬停行为的地图上添加一个点。我添加了以下字形:
bc_glyph = Circle(x=barclays_x, y=barclays_y, size=10, line_color="black", fill_color="silver", line_width=1)
我试图用这个创建自定义 HoverTool 行为:
bc_ht = HoverTool(renderers=['bc_glyph'], tooltips=['Barclays Stadium'])
然后我打电话给plot.add_glyph(bc_glyph)
。当 运行 我的脚本时,我得到以下输出:
ValueError: expected an element of either Auto or List(Instance(Renderer)), got ['bc_glyph']
错误消息的快速 google 导致 Bryan helping another user with a similar issue, 所以我重写如下:
plot_add = plot.add_glyph(bc_glyph)
bc_ht = HoverTool(renderers=['plot_add'], tooltips=['Barclays Stadium'])
但是,那个returns同样的错误:
ValueError: expected an element of either Auto or List(Instance(Renderer)), got ['plot_add']
我知道我向 renderers
提供了错误的输入,但我不确定如何更正。感谢任何帮助。
您仍在传递字符串 'plot_add'
作为值。您需要传递实际变量:
bc_ht = HoverTool(renderers=[plot_add], # no quote around plot_add
tooltips=['Barclays Stadium'])
我根据 the texas.py example Bokeh 的文档大致创建了一张地图。我正在尝试在具有自己的鼠标悬停行为的地图上添加一个点。我添加了以下字形:
bc_glyph = Circle(x=barclays_x, y=barclays_y, size=10, line_color="black", fill_color="silver", line_width=1)
我试图用这个创建自定义 HoverTool 行为:
bc_ht = HoverTool(renderers=['bc_glyph'], tooltips=['Barclays Stadium'])
然后我打电话给plot.add_glyph(bc_glyph)
。当 运行 我的脚本时,我得到以下输出:
ValueError: expected an element of either Auto or List(Instance(Renderer)), got ['bc_glyph']
错误消息的快速 google 导致 Bryan helping another user with a similar issue, 所以我重写如下:
plot_add = plot.add_glyph(bc_glyph)
bc_ht = HoverTool(renderers=['plot_add'], tooltips=['Barclays Stadium'])
但是,那个returns同样的错误:
ValueError: expected an element of either Auto or List(Instance(Renderer)), got ['plot_add']
我知道我向 renderers
提供了错误的输入,但我不确定如何更正。感谢任何帮助。
您仍在传递字符串 'plot_add'
作为值。您需要传递实际变量:
bc_ht = HoverTool(renderers=[plot_add], # no quote around plot_add
tooltips=['Barclays Stadium'])