【发布时间】:2020-10-03 23:46:25
【问题描述】:
我正在尝试从 Excel 工作表中加载数据,然后将所有数据绘制在同一个图上,但我对在一个图上绘制多条线有点缺乏经验。每列是经过的时间和相应的剩余行为。我有多个同名的列。每列的时间不同,因此有多个时间列。现在代码只输出 4 个单独的图。有人可以告诉我如何在不让自己过于复杂的情况下做到这一点,我将来必须绘制多个文件并且想要一个简单的方法。
import pandas as pd
import matplotlib.pyplot as plt
HD = pd.read_excel('C:\\Users\\azizl\\Desktop\\HDPD_Data.xlsx')
HD.plot(x='Time Elapsed', y= 'Residual Act.' , label='24')
HD.plot(x='Time Elapsed.1', y= 'Residual Act..1', label='48')
HD.plot(x='Time Elapsed.2', y= 'Residual Act..2', label='normal')
HD.plot(x='Time Elapsed.3', y= 'Residual Act..3', label='physical')
plt.show()
HD.head()
【问题讨论】:
-
您使用
fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(..., ...))创建带有子图的图形,然后为第一个子图调用HD.plot(...., ax=axes[0, 0]),为其他子图调用axes[0, 1]、axes[1, 0]和axes[1, 1] -
对不起,我想我写错了,我只是想在一个情节上有多条线,而不是一个有多个情节的数字。
-
您可以使用
fig, ax = plt.subplots((nrows=1, ncols=1, ...)并使用四次相同的ax:HD.plot(...., ax=ax)。在最后一个plot之后,您可以调用plt.legend()以创建具有给定标签的图例。您可以添加使用当前代码获得的绘图图像,并解释您想要的不同之处。没有一些玩具数据,很难提供更多反馈。 -
请查看How to provide a reproducible copy of your DataFrame using
df.head(30).to_clipboard(sep=','),然后edit您的问题,并将剪贴板粘贴到代码块中。始终以文本形式提供minimal reproducible example代码、数据、错误、当前输出和预期输出。如果相关,绘图图像是可以的。
标签: python python-3.x excel matplotlib plot