我正在尝试向我的 Bokeh 图添加悬停工具提示。工具提示出现,但我试图显示的面积值显示为“???”。我正在使用 ColumnDataSource 来设置绘图源数据,并且 area 是该数据源中的有效列。我不明白为什么情节不能确定面积值。
source = ColumnDataSource(data=df.groupby('state').sum())
TOOLTIPS = [("area", "@%area")]
p = figure(x_range=source.data['state'], width=1300, height=1000)
p.vbar(x=source.data['state'], top=source.data['area'], width=.5)
from bokeh.models import HoverTool
p.add_tools(HoverTool(tooltips=TOOLTIPS))
请您参考如下方法:
问题是 Bokeh 允许两种不同的方式为字形提供数据。但只有一种方法适用于工具提示,如果工具提示引用数据中的列。 这一行:
p.vbar(x=source.data['state'], top=source.data['area'], width=.5)
应该改为:
p.vbar(x='state', top='area', width=.5, source=source)
