python - 使用单个 x 轴从一个数据帧绘制多个图 - Python
问题描述
我已经搜索了所有可能的解决方案,但它似乎从来没有以我可以理解的方式创建情节。它也应该适用于潜在的 100 个数据框列,因此首选处于循环中或类似性质的解决方案
我的数据框大致是这样的
数据=
Time Pressure Static Temperature Stag Temperature
0 100 50 75
10 105 55 77
20 110 59 81
30 106 57 79
我想要的是 3 个不同的图表,它们绘制了压力、静态温度和停滞温度与时间的关系,这将是 X 轴。
我当前的代码看起来像
import pandas
data=pandas.read_csv(data.csv')
for header in data:
data.plot(x='System Time',y=header)
我想我理解问题是我的 data.plot 需要有 y="Something in quotes" 但我认为因为 header 是一个字符串,它应该可以工作。
任何获得多个图表的解决方案都绝对很棒!
如果我的格式搞砸了,我也很抱歉,因为这是我第一次发帖!
解决方案
如果将来有人发现这个,我想出了我自己的问题!
问题是每次都抛出一个错误,它所说的只是
KeyError: 'Time'
出现这个问题是因为“时间”是我的 x 轴,然后通过“数据”的迭代成为我的 y 轴。因此,在第一个循环中每次都会停止。
为了解决这个问题,我所要做的就是添加一个跳过我的 x 轴列的语句
import pandas
data=pandas.read_csv(r'data.csv')
for header in data:
if header!="Time":
data.plot(x='Time',y=header,legend=False)
这跳过了第一列,并允许将其余标题绘制在单独的图中。
如果标题让您感到困惑(就像一开始让我感到困惑),您可以使用更通用的形式
import pandas
data=pandas.read_csv(r'data.csv')
for i in list(data):
if i!="Time":
data.plot(x='Time',y=i,legend=False)
大家好运!
推荐阅读
- excel - 如何使高级过滤器将一行数据复制到范围?
- python - 在 Python (Mac) 中使用 OpenCV 裁剪视频
- python - Factorial RecursionError:比较超过最大递归深度
- arrays - 需要一个自定义函数来为显示的每一行重复并最小化 API 调用
- reactjs - 一旦服务器终止,如何停止加载单页应用程序中的组件?
- typescript - 如何构建具有类型数组中所有属性的类型?
- apache-spark - 如何在 Pyspark 结构化流中处理时间戳
- postgresql - 查询包含所有先前位置总和的表,不包括当前位置
- python - 映射后的数字格式?
- c# - 当您使用 asp.net 身份有单独的身份项目时如何在其他项目中验证 JWT 令牌