如何禁用 hvPlot 图中的科学记数法?

How to disable scientific notation in hvPlot plots?

我今天才开始使用 hvPlot,作为 Panel 的一部分。

我很难弄清楚如何在我的绘图中禁用科学记数法。例如,这是一个简单的条形图。轴和工具提示采用科学记数法。如何将格式更改为简单的整数?

我正在向非数字和非技术管理人员展示此内容。他们宁愿只看到基本整数,我不想向他们解释什么是科学记数法。

我在文档中找不到任何帮助我的东西:https://hvplot.holoviz.org/user_guide/Customization.html

我还尝试将 Bokeh 文档中的建议拼凑在一起。

我想不通。请帮忙!谢谢

我的简单df:

   local_date      amount
0      Jan 19   506124.98
1      Feb 19   536687.28
2      Mar 19   652279.31
3      Apr 19   629440.06
4      May 19   703527.00
5      Jun 19   724234.08
6      Jul 19   733413.32
7      Aug 19   758647.44
8      Sep 19   782676.16
9      Oct 19   833674.28
10     Nov 19   864649.74
11     Dec 19   849920.47
12     Jan 20   857732.52
13     Feb 20   927399.50
14     Mar 20  1152440.49
15     Apr 20  1285779.35
16     May 20  1431744.76
17     Jun 20  1351893.95
18     Jul 20  1325507.38
19     Aug 20  1299528.81

和代码:

df.hvplot.bar(height=500,width=1000)

您可以在 x 或 y-axis 刻度中指定要使用的格式化程序,例如:

df.hvplot.bar(height=500,width=1000, yformatter='%.0f')

根据您还引用的 Customization 页面,xformatteryformatter 参数可以接受“printf 格式化程序,例如 '%.3f' 和 bokeh TickFormatter”。因此,另一种方法是从 boken.models.formatters 传递自定义 formatter 并对其进行自定义(注意:您还可以探索许多其他格式化程序)。例如:

from bokeh.models.formatters import BasicTickFormatter
df.hvplot.bar(height=500,width=1000, yformatter=BasicTickFormatter(use_scientific=False))

两者都应该给你这样的结果:

现在,编辑悬停工具提示格式有点麻烦。一种方法是按以下方式将图形对象指定为自定义 HoverTool

from bokeh.models import HoverTool
hover = HoverTool(tooltips=[("amount", "@amount{0,0}"), ("local_date", "@local_date")]) 
df.hvplot.bar(height=500, width=1000, yformatter='%.0f', use_index=False).opts(tools=[hover])

您可以找到有关如何配置自定义 HoverTool here.

的更多详细信息