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

Python Matplotlib 如何调整次Y轴范围且不改变原有柱状图显示

次Y轴范围与刻度调整实现方案

你只需额外获取次Y轴实例后调用对应配置方法即可,全程不会修改柱状图的显示效果。

修改后完整代码

import matplotlib.pyplot as plt
import pandas as pd

width=.5
t=pd.DataFrame({'bars':[3.4,3.1,5.1,5.1,3.8,4.2,5.2,4.0,3.6],'lines':[2.4,2.2,2.4,2.1,2.0,2.1,1.9,1.8,1.9]})
t['bars'].plot(kind='bar',width=width)
t['lines'].plot(secondary_y=True, color='red')

ax=plt.gca()
plt.xlim([-width,len(t['bars'])-width])
ax.set_xticklabels(('1','2','3','4','5','6','7','8','9'))

# 新增次Y轴配置代码
ax2 = ax.right_ax
ax2.set_ylim(0.0, 2.5)
ax2.set_yticks([0, 0.5, 1.0, 1.5, 2.0, 2.5])

plt.show()

配置说明

  • 调用ax.right_ax即可获取右侧次Y轴的实例,该操作不会修改左侧主Y轴关联的柱状图任何配置
  • set_ylim(0.0, 2.5)直接指定次Y轴的显示范围,覆盖默认的自动适配范围
  • set_yticks()手动传入刻度值列表,即可实现0.5的固定步长效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 01:54:01