You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整Bokeh X轴刻度间隔及显示完整整数刻度(如704、705、706)

关于Bokeh X轴刻度调整的两个解决方案

嘿,刚好最近在项目里折腾过Bokeh的轴刻度配置,给你两个针对性的解决办法:

1. 调整X轴的刻度间隔

要控制X轴刻度的间隔,核心是给X轴指定合适的ticker对象,Bokeh提供了几种常用的选择:

方法一:固定间隔(推荐用于线性轴)

如果想要固定的刻度间隔(比如每2个单位显示一个刻度),可以用LinearTicker并设置interval参数:

from bokeh.plotting import figure, show
from bokeh.models import LinearTicker

# 创建示例图
p = figure(x_range=(700, 710), y_range=(0, 10))
p.line([700,702,704,706,708,710], [1,3,5,7,9,10])

# 替换X轴的ticker,设置间隔为2
p.xaxis.ticker = LinearTicker(interval=2)

show(p)

方法二:手动指定刻度位置

如果需要完全自定义哪些位置显示刻度,用FixedTicker,把想要的刻度值放进ticks列表里就行:

from bokeh.models import FixedTicker

# 只在指定的奇数位置显示刻度
p.xaxis.ticker = FixedTicker(ticks=[701, 703, 705, 707, 709])

2. 设置X轴显示完整的整数刻度值

默认情况下,Bokeh可能会自动简化刻度(比如用科学计数法或者省略高位),要强制显示完整的整数,需要同时调整刻度生成规则和刻度格式化方式:

from bokeh.models import PrintfTickFormatter, LinearTicker

# 第一步:确保刻度只生成整数,把间隔设为1
p.xaxis.ticker = LinearTicker(interval=1)
# 第二步:强制用纯整数格式显示,避免自动简化
p.xaxis.formatter = PrintfTickFormatter(format='%d')

这样设置后,X轴就会老老实实显示704、705、706这类完整的整数,不会出现任何简化格式。如果你的数据范围很大也不用担心,%d会自动适配整数长度。


内容的提问来源于stack exchange,提问作者user9238790

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 04:32:17