如何在Bokeh中禁用坐标轴上数字的科学计数法输出?例如,我想显示400000而不是4.00e+5。
在mpl中:ax.get_xaxis().get_major_formatter().set_scientific(False)
您可以使用以下方法禁用科学计数法:
fig = plt.figure(title='xxx', x_axis_type='datetime')
fig.left[0].formatter.use_scientific = False
我试图关闭对数轴上的科学计数法,但以上答案并不适用于我。
我发现了这个链接: python bokeh plot如何格式化坐标轴显示
按照此方法,以下代码对我有用:
from bokeh.models import BasicTickFormatter
fig = plt.figure(title='xxx', x_axis_type='datetime',y_axis_type='log')
fig.yaxis.formatter = BasicTickFormatter(use_scientific=False)
Charts
接口的更改,Marek的答案将不再适用。以下代码(来自GitHub)是如何在高级图表中关闭科学计数法的完整示例。from bokeh.embed import components
from bokeh.models import Axis
from bokeh.charts import Bar
data = {"y": [6, 7, 2, 4, 5], "z": [1, 5, 12, 4, 2]}
bar = Bar(data)
yaxis = bar.select(dict(type=Axis, layout="left"))[0]
yaxis.formatter.use_scientific = False
script, div = components(bar)
print(script)
print(div)
关键的几行是:
yaxis = bar.select(dict(type=Axis, layout="left"))[0]
yaxis.formatter.use_scientific = False
use_scientific
属性。use_scientific
属性的更多信息:
use_scientific
属性的文档from bokeh.models import Axis
yaxis = bar.chart.plot.select(dict(type=Axis, layout="left"))[0]
yaxis.formatter.use_scientific = False
bar.chart.show()
fig.below[0].formatter.use_scientific = False
。 - Contango