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

如何批量绘制pandas DataFrame的所有行(非列)

绘制Pandas DataFrame的所有行(而非列)

没问题,这事儿其实很好解决——核心就是把你的DataFrame转置一下,因为Pandas默认的plot()方法是按列绘制曲线的,转置后原来的行就变成了列,刚好匹配你的需求!

方法一:转置DataFrame后直接绘制(推荐)

这种方法最简洁高效,不管你有多少行(哪怕200行)都能一次性处理,完全不用手动指定行:

import pandas as pd
import matplotlib.pyplot as plt

# 假设你的DataFrame是df
df = pd.DataFrame(...)  # 替换成你的实际数据

# 转置后绘制,原DataFrame的每一行都会变成一条独立曲线
df.T.plot()
plt.show()

转置的逻辑很直观:df.T会把原DataFrame的行和列互换,原DataFrame的每一行就成了新DataFrame的一列,而Pandas的plot()默认就是为每一列生成一条曲线,完美解决你“画所有行”的需求。

方法二:循环遍历每一行绘制(适合自定义场景)

如果你需要对每一行的绘制做更细致的控制(比如自定义行标签),也可以用循环遍历每一行:

import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame(...)  # 替换成你的实际数据

# 遍历每一行并逐一绘制
for row_idx, row_data in df.iterrows():
    # row_data.index是原DataFrame的列名(作为x轴),row_data.values是该行的数值
    plt.plot(row_data.index, row_data.values, label=f'Row {row_idx}')

# 可选:添加图例区分不同行
plt.legend()
plt.show()

这个方法虽然代码多一点,但灵活性更高,适合需要额外定制的场景。

两种方法都能适配任意行数的DataFrame,完全不用担心行数变化的问题,也不需要手动设置颜色(Matplotlib会自动为不同曲线分配区分度足够的颜色)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:24:14