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

matplotlib绘图时X轴刻度范围与数据不匹配如何自定义设置

要实现X轴刻度起始值调整为-20,可以通过以下两种方案覆盖matplotlib的默认轴范围规则:


方案1:直接固定X轴显示范围

这是最简实现方式,仅需在plt.tight_layout()之前添加一行代码指定X轴左右边界即可:

# 左边界设为-20,右边界设为105可避免最右侧100的刻度贴边,可根据显示需求自行调整
plt.xlim(left=-20, right=105)

方案2:自定义刻度位置(精确控制显示的刻度值)

如果不仅要调整显示范围,还要让刻度精准从-20开始、按固定步长排列,可以直接指定所有X轴刻度值:

# 示例:刻度从-20开始,步长20,覆盖到最大数据值100
plt.xticks(range(-20, 110, 20))

修改后的完整可运行代码

import matplotlib.pyplot as plt

xlabel = "Field (mT)"
ylabel = "Frequency (GHz)"

headingszie = 22
labelsize   = 60
ticksize    = 50

field = [-15,-10,-5,0,10,20,30,40,50,60,70, 80, 90, 100]
frq0 = [1.08,2.26,5.37, 4.44,3.26,2.80,1.90,5.01,2.06,2.151,2.112, 2.112, 2.114, 2.118]

plt.figure(figsize=(15,15))
plt.scatter(field,frq0,color='orange',s=300)
plt.plot(field,frq0, color='orange',linewidth=4.0)
plt.xlabel(xlabel,fontsize=labelsize)
plt.ylabel(ylabel,fontsize=labelsize)
plt.tick_params(labelsize=ticksize)

# 两种方案选其一即可
plt.xlim(left=-20, right=105)
# 若使用方案2请替换上一行为:plt.xticks(range(-20, 110, 20))

plt.tight_layout()
plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 02:06:03