Pandas多函数绘图:将y/75设为Y轴并展示所有函数
解决方法
直接上能用的代码和逻辑说明:
1. 数据读取与预处理
假设你的Excel里y/75是一列,U22、U35、U55是另外三列,先按下面的方式读数据:
import pandas as pd import matplotlib.pyplot as plt # 替换成你的Excel文件路径 df = pd.read_excel("你的数据集.xlsx")
如果读取时你把y/75设成了索引,先转成普通列方便操作:
df = df.reset_index() # 将索引y/75转为列
2. 同图绘制+坐标轴切换
核心是把所有系列都画在同一个绘图轴上,手动指定X/Y轴对应的数据:
# 创建统一的绘图轴对象 fig, ax = plt.subplots() # 分别绘制三个U系列,X轴是U值,Y轴是y/75 ax.plot(df["U22"], df["y/75"], label="U22") ax.plot(df["U35"], df["y/75"], label="U35") ax.plot(df["U55"], df["y/75"], label="U55") # 设置坐标轴标签 ax.set_xlabel("U值") ax.set_ylabel("y/75") # 添加图例区分三个系列 ax.legend() # 显示图形 plt.show()
你之前方法失效的原因
- 第一种无法切换坐标轴:大概率是用了
df.plot()的默认逻辑,它会自动把索引当X轴、列当Y轴,没手动指定X/Y的对应关系。 - 第二种只能逐个绘制:应该是每次绘图都新建了独立的轴(比如重复调用
plt.plot()但没指定ax),只要把所有绘图命令绑定到同一个ax对象,就能在同一张图里显示所有系列。
内容的提问来源于stack exchange,提问作者Gabriele
相关产品推荐
相关产品推荐

