使用不同样式的线(Matplotlib、plot)显示数据和缺少的数据

2024-05-19 16:34:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我有不同的数据系列,有些缺失(NaN

我想画一个图表,用实线连接数据,用虚线连接缺失的数据

我想把它放在同一个情节上

范例

0     0.146397
1          NaN
2     0.356559
3          NaN
4          NaN
5          NaN
6          NaN
7     0.146451
8          NaN
9          NaN
10         NaN
11         NaN
Name: mySeries, dtype: object

我知道我能做到:

# solid
plt.plot( my_series,  linestyle='-', marker='o')

# dotted, excluding Nan
plt.plot( my_series.dropna(), linestyle=':', marker='o')

我想把情节叠加起来,比如:

plt.plot( my_series,  linestyle='-', marker='o')
plt.plot( my_series.dropna(), linestyle=':', marker='o')
plt.show

但我看到只有最后一个图形被看到(我使用的是jupyter,不确定这是不透明度问题还是jupyter,它只显示最后一个计算的绘图)

我如何使用相同的绘图通知用户哪些线反映真实数据,哪些线连接缺失的数据

(使用pandas、matplotlib、jupyter)


Tags: 数据绘图plotmy图表jupyterpltnan
1条回答
网友
1楼 · 发布于 2024-05-19 16:34:43

在不同的单元格中尝试每个命令,您将看到第一行看起来像散射。这是因为你的数据确实是分散的。所以我对它做了一点修改:

0     0.146
1     0.220
2       NaN
3     0.356
4       NaN
5       NaN
6       NaN
7       NaN
8     0.146
9       NaN
10      NaN
dtype: float64

并切换了绘图顺序,因为我们希望原始绘图位于顶部:

plt.plot( my_series.dropna(), ':o')
plt.plot(my_series, marker='o')
plt.show()

输出:

enter image description here

相关问题 更多 >