尝试使用ColumnDataSource
。
悬停工具需要有权访问数据源,以便它可以显示信息。@x
,@y
是数据单位中的xy值。(@
前缀是特殊的,只能跟随一组有限的变量,@y2
不是其中的一个)。通常,我会使用$
+ column_name显示我感兴趣的值,例如$weight
。有关更多信息,请参见此处。
此外,令我惊讶的是,这种悬停会完全出现。因为我认为hoverTool不与线雕文工作,因为注意到这里
请尝试以下操作:(我尚未测试过,可能有错字)。
df = yearly_DF.reset_index() # move index to column.
source = ColumnDataSource(ColumnDataSource.from_df(df)
hover.tooltips = OrderedDict([('x', '@x'),('y', '@y'), ('year', '$index'), ('weight','$weight'), ('muscle_weight','$muscle_weight'), ('body_fat','$bodyfat_p')])
p.line(x='index', y='weight', source=source, legend="Weight")
p.line(x='index', y='muscle_weight', source=source, legend="Muscle Mass", line_color="red")