如何在散景中使用悬停工具提示显示整数,而不是浮点数

cap*_*hab 21 python bokeh

我有一个简单的XY数据点图.当我将鼠标悬停在它上面时,我希望我的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))
Run Code Online (Sandbox Code Playgroud)

Wil*_*llZ 38

加我两分钱.我想你可以通过使用以下代码控制小数点:

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
]
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.

  • 如果你知道如何缩放y然后格式化它,那会很奇怪.例如,假设您想将y乘以100并以百分比形式报告.关于如何指定的任何想法? (2认同)

cap*_*hab 12

啊哈!用@代替$作品.

hover.tooltips = [
    ("Days", "@x"),
    ("Return", "@y"),
]
Run Code Online (Sandbox Code Playgroud)