我有两个类似的Matplotlib代码,但是它们生成的结果不同。
1:
2:
代码#1生成一条直线,而NaN区域用不同颜色的实线填充。
代码#2生成一条直线的图形,但不会用线条填充NaN区域。相反,在那里有一个间隙。
我怎样才能使代码#1生成像代码#2一样的NaN间隙?我已经谷歌了几天,没有找到答案。任何帮助和建议将不胜感激。谢谢。
1:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,10,100)
y = np.linspace(0,10,100)
y[10:40] = np.nan
plt.plot(x,y)
plt.savefig('fig')
2:
from pylab import *
x = linspace(0,10,100)
y = linspace(0,10,100)
y[10:40] = np.nan
plot(x,y)
savefig('fig')
代码#1生成一条直线,而NaN区域用不同颜色的实线填充。
代码#2生成一条直线的图形,但不会用线条填充NaN区域。相反,在那里有一个间隙。
我怎样才能使代码#1生成像代码#2一样的NaN间隙?我已经谷歌了几天,没有找到答案。任何帮助和建议将不胜感激。谢谢。
NaN
。你正在同时运行这两个代码片段吗?如果是这样,它们将绘制在同一张图上。 - Joe Kingtonipython
(或类似的)会话中进行了绘图,那么你几乎肯定会看到绘图效果。如果你正在进行长时间的交互式会话,最好始终明确地创建一个新的图形。请注意,这里不需要解释。 - Joe Kington