散景 - 为补丁图上的单个字形创建自定义hovertool

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了散景 - 为补丁图上的单个字形创建自定义hovertool相关的知识,希望对你有一定的参考价值。

我在Bokeh的文档中大致跟随the texas.py example创建了一张地图。我试图在地图上添加一个具有自己的鼠标悬停行为的点。我添加了以下字形:

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']

快速谷歌的错误消息导致Bryan helping another user with a similar issue,所以我重写如下:

plot_add = plot.add_glyph(bc_glyph)
bc_ht = HoverTool(renderers=['plot_add'], tooltips=['Barclays Stadium'])

但是,返回相同的错误:

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'])

以上是关于散景 - 为补丁图上的单个字形创建自定义hovertool的主要内容,如果未能解决你的问题,请参考以下文章

散景图上的多个滑块

用于不同线条的多个 HoverTools(散景)

如何为地理视图(散景)创建自定义颜色图?

使用 color_mapper 隐藏基于分类数据的散景字形

散景自定义保存工具

向 Bootstrap 3 添加额外的自定义字形图标