我有一个日期为索引的数据框,以列为单位的浮点数,主要填充了NaN和一些浮点数。
我正在使用:p绘制此数据框
fig, ax = plt.subplots()
plot(df2[11][2:], linestyle='dashed',linewidth=2,label='xx')
ax.set(xlabel='xx', ylabel='xx', title='xx')
ax.grid()
ax.legend()
绘图窗口已打开,但没有数据出现。但是,如果我使用标记而不是直线,则会出现数据点。
将图形绘制成直线时,我该如何纠正?
edit谢谢,它是这样工作的:
s1 = np.isfinite(df2[11][2:])
fig, ax = plt.subplots()
plot(df2.index[2:][s1],df2[11][2:].values[s1], linestyle='-',linewidth=2,label='xx')
ax.set(xlabel='xx', ylabel='xx',title='xx')
ax.grid()
ax.legend()
答案 0 :(得分:1)
尝试
import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot(df2[11][2:], linestyle='dashed',linewidth=2,label='xx')
plt.set(xlabel='xx', ylabel='xx', title='xx')
plt.grid()
plt.legend()
plt.show()
答案 1 :(得分:0)
在您的情况下,matplotlib不会在以NaN分隔的点之间画线。您可以掩盖NaN或摆脱它们。看看下面的链接,有一些解决方案可以画出跳过NaN的线。
matplotlib: drawing lines between points ignoring missing data