我有一个简单的X-Y数据点图。当我将鼠标悬停在它上面时,我希望我的Bokeh图形显示每个数据点的整数值。我接近得到我想要的东西但是当我将鼠标悬停在数据点上时,它显示一个浮点数然后更高,它使用科学记数法。有没有办法让悬停工具只返回X和Y的整数值而不使用科学记数法?
以下是一些示例代码:
from bokeh.plotting import *
from bokeh.models import HoverTool
x = range(1,101)
y = [i*i for i in x]
TOOLS = "pan,wheel_zoom,box_zoom,reset,save,box_select, hover"
p = figure(x_axis_label = "Days",
y_axis_label = "Return",
tools=TOOLS)
p.circle(x, y)
#adjust what information you get when you hover over it
hover = p.select(dict(type=HoverTool))
hover.tooltips = [
("Days", "$x"),
("Return", "$y"),
]
show(VBox(p))
答案 0 :(得分:35)
加我的两分钱。我想你可以通过使用以下代码来控制小数点:
hover.tooltips = [
("Days", "@x{int}"), # this will show integer, even if x is float
("Return", "@y{1.11}"), # this will format as 2-decimal float
]
希望这有帮助。
答案 1 :(得分:11)
啊哈!使用@而不是$ works。
hover.tooltips = [
("Days", "@x"),
("Return", "@y"),
]