将悬停工具与 vbar 字形一起使用

Using the hover tool with vbar glyphs

问题

是否可以将悬停工具与散景 vbar 字形一起使用?

问题

使用相同的基本设置,我可以在 circle 字形上使用悬停工具获得很棒的工具提示,但不能在 vbar 字形上获得很好的工具提示

示范[​​=28=]

设置

import numpy
import pandas
from bokeh import charts, plotting, models
plotting.output_notebook()

blue = 'STEELBLUE'
green = 'FORESTGREEN'

datalist = [
    {'month': 'Oct', 'rain': 131., 'snow':  0.0, 'wy_month': 1},
    {'month': 'Nov', 'rain': 12.4, 'snow':  0.0, 'wy_month': 2},
    {'month': 'Dec', 'rain': 43.0, 'snow': 13.5, 'wy_month': 3},
    {'month': 'Jan', 'rain': 63.0, 'snow':  9.2, 'wy_month': 4},
    {'month': 'Feb', 'rain': 72.6, 'snow': 35.3, 'wy_month': 5},
    {'month': 'Mar', 'rain': 13.5, 'snow':  4.2, 'wy_month': 6},
    {'month': 'Apr', 'rain': 107., 'snow':  1.5, 'wy_month': 7},
    {'month': 'May', 'rain': 77.0, 'snow':  0.0, 'wy_month': 8},
    {'month': 'Jun', 'rain': 107., 'snow':  0.0, 'wy_month': 9},
    {'month': 'Jul', 'rain': 216., 'snow':  0.0, 'wy_month': 10},
    {'month': 'Aug', 'rain': 76.8, 'snow':  0.0, 'wy_month': 11},
    {'month': 'Sep', 'rain': 76.4, 'snow':  0.0, 'wy_month': 12}
]

data = pandas.DataFrame(datalist).assign(total=lambda df: df['rain'] + df['snow'])
source = plotting.ColumnDataSource(data)

tooltips = [
    ("month", "@month"),
    ("rain", "@rain"),
    ("snow", "@snow"),
]

成功 circle 个字形

hover_circle = models.HoverTool(tooltips=tooltips)
TOOLS_circle = [hover_circle, models.ResizeTool(), models.ResetTool()]

fig = plotting.figure(width=600, height=300, y_range=(0, 250),
                      x_range=data['month'].tolist(),
                      tools=TOOLS_circle)
fig.circle(x='wy_month', y='rain', color=blue, source=source)
fig.circle(x='wy_month', y='snow', color=green, source=source)
plotting.show(fig)

vbar 字形不成功

hover_bar = models.HoverTool(tooltips=tooltips)
TOOLS_bar = [hover_bar, models.ResizeTool(), models.ResetTool()]

fig = plotting.figure(width=600, height=300, y_range=(0, 250),
                      x_range=data['month'].tolist(),
                      tools=TOOLS_bar)
fig.vbar(x='wy_month', bottom=0, top='rain', width=0.5, color=blue, source=source)
fig.vbar(x='wy_month', bottom='rain', top='total', width=0.5, color=green, source=source)
plotting.show(fig)

更新:该功能已经实现,将在0.12.2

还没有,因为 Bokeh 0.12.1。鉴于可以选择在没有命中测试支持的情况下添加 vbar/hbar,或者根本不添加它们,因此决定尽早提供它们对大多数用户有用,而不是稍后提供。为这些字形添加命中测试是一个短期的优先事项,尽管目前团队非常紧张。如果您有兴趣贡献,请联系 GitHub。