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

Matplotlib柱状图Y轴截断设置:如何将Y轴起始值设为0.7

调整Matplotlib柱状图Y轴起始值的方法

别担心,这个问题其实很好解决——虽然你是用Pandas调用绘图函数,但它的底层依赖的是Matplotlib,所以直接通过Matplotlib的轴对象就能轻松调整Y轴范围!

下面给你两种常用的实现方式,结合Pandas绘图场景:

方法一:获取绘图返回的轴对象设置

当你用Pandas的plot.bar()(或plot(kind='bar'))时,这个函数会返回一个Matplotlib的Axes对象,我们可以直接用它的set_ylim()方法来指定Y轴起始值:

import pandas as pd
import matplotlib.pyplot as plt

# 示例数据(模拟你的0.8-1之间的数值)
df = pd.DataFrame({'metric': [0.83, 0.91, 0.87, 0.95, 0.89]})

# 绘制柱状图并获取轴对象
ax = df.plot(kind='bar')
# 设置Y轴起始值为0.7,上限可以自动适配(或手动指定top=1)
ax.set_ylim(bottom=0.7)
# 如果需要固定上限为1,就写成:ax.set_ylim(bottom=0.7, top=1)

plt.show()

方法二:获取当前活动轴设置

如果你已经绘制了图表,也可以用plt.gca()(Get Current Axes)获取当前的轴对象,再调整范围:

import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame({'metric': [0.83, 0.91, 0.87, 0.95, 0.89]})

df.plot(kind='bar')
# 获取当前轴并设置Y轴起始值
plt.gca().set_ylim(bottom=0.7)

plt.show()

补充:直接用Matplotlib绘图的情况

如果你是直接用Matplotlib原生函数画柱状图,逻辑是一样的:

import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame({'metric': [0.83, 0.91, 0.87, 0.95, 0.89]})

plt.bar(df.index, df['metric'])
plt.ylim(bottom=0.7)  # 直接设置Y轴范围
plt.show()

核心就是set_ylim()(或plt.ylim())这个方法,bottom参数控制Y轴的起始值,top控制上限——你可以只设置其中一个,另一个会自动适配数据范围,完全符合你想要的把Y轴起始设为0.7的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 04:22:24