【发布时间】:2022-01-18 09:09:15
【问题描述】:
我正在用datetime 和power 绘制一个图表,可以在附图中的蓝色大线中看到。
绘制图像后,我尝试在同一图中插入一维列表 (only_unusual)。
实际上df['power'] 包括一维列表(only_unusual)的值。
但如果不将 y 轴与 only_unusual 一起添加,我无法绘制图表。
如何在同一个图中绘制only_unusual 列表,以便它在主蓝线上以不同的颜色显示?
我的代码:
fig, ax = plt.subplots(figsize=(16,12))
ax.plot(pd.to_datetime(df['datetime']), df['power'], color='b',label='Normal')
ax.scatter(only_unusual , color='red', label='Unusual',marker='o')
ax.xaxis_date()
plt.xlabel('Date Time')
plt.ylabel('power')
plt.legend()
fig.autofmt_xdate()
plt.show()
我的数据:
only_unusual : [13.266, 4.213291, 2.756, 3.6722, 12.356, 12.193, 10.318, 12.203, 8.7549, 9.536, 9.10677, 1.417]
df :
datetime invno power
0 2021-12-01 00:00:00 1 0.000
5 2021-12-01 01:00:00 1 0.000
10 2021-12-01 02:00:00 1 0.000
15 2021-12-01 03:00:00 1 0.000
20 2021-12-01 04:00:00 1 0.000
.... ...... ...... .... .. .....
1129 2021-12-10 09:00:00 5 2.914
1134 2021-12-10 10:00:00 5 10.318
... ... ... ...
1149 2021-12-10 13:00:00 5 2.756
1154 2021-12-10 14:00:00 5 1.297
1159 2021-12-10 15:00:00 5 1.503
1164 2021-12-10 16:00:00 5 1.417
1169 2021-12-10 17:00:00 5 0.084
1170 rows × 3 columns
【问题讨论】:
-
你的意思是像
ax.scatter(pd.to_datetime(df['datetime']), only_unusual, color='red', label='Unusual', marker='o') -
是的,当我使用这一行时,它会给出像 x 一样的错误,并且 y 必须是相同的大小。任何想法摆脱这个错误?我想我需要匹配 datetime idx 和 only_unusual idx。
-
所以看来
only_unusual只是一个子集。我想这就是这句话的意思:“df['power']包括only_unusual的值” -
df['datetime]的总长度为1170,通常only_unusual的len为6或7。需要什么样的信息?我会尽量在这里提供。在意识到不同的大小后,我来这里寻求帮助。
标签: python python-3.x matplotlib plot seaborn