python pyplot负等高线不显示
python pyplot negative contour lines not displayed
minr=min(r_s)
maxr=max(r_s)
mini=min(i_s)
maxi=max(i_s)
xi=np.arange(minr,maxr, 0.1)
yi=np.arange(mini,maxi, 0.1)
zi=mlab.griddata(r_s, i_s, r_z, xi, yi, interp='linear')
plt.rcParams['contour.negative_linestyle'] = 'dashed'
CS=plt.contour(xi,yi,zi,50, linewidths =2.0)
plt.clabel(CS, inline=1, fontsize=10)
CS = plt.contourf(xi,yi,zi,15,cmap=plt.cm.rainbow)
plt.colorbar()
plt.xlabel('RS')
plt.ylabel('IS')
plt.show()
print ("END")
上面的代码是用来显示分散的3D点的等值线图r_s, i_s, r_z。我能够绘制等高线 map/lines 但只显示正等高线。我错过了什么吗?我想显示许多等高线,包括负等高线。
数据变化如下:
r_s:从 -7 到 2.0,步长为 0.1
i_s:从-3到15,步长为0.1
r_z:从-1100到400随机
我找到了解决问题的方法。代码很好。问题出在数据上。事实上,一些数据点(少数点)高于 10^6,这迫使等高线图不显示负点(约 -1000)。修复数据后,我可以用上面的代码绘制等高线,包括负等高线。
minr=min(r_s)
maxr=max(r_s)
mini=min(i_s)
maxi=max(i_s)
xi=np.arange(minr,maxr, 0.1)
yi=np.arange(mini,maxi, 0.1)
zi=mlab.griddata(r_s, i_s, r_z, xi, yi, interp='linear')
plt.rcParams['contour.negative_linestyle'] = 'dashed'
CS=plt.contour(xi,yi,zi,50, linewidths =2.0)
plt.clabel(CS, inline=1, fontsize=10)
CS = plt.contourf(xi,yi,zi,15,cmap=plt.cm.rainbow)
plt.colorbar()
plt.xlabel('RS')
plt.ylabel('IS')
plt.show()
print ("END")
上面的代码是用来显示分散的3D点的等值线图r_s, i_s, r_z。我能够绘制等高线 map/lines 但只显示正等高线。我错过了什么吗?我想显示许多等高线,包括负等高线。
数据变化如下: r_s:从 -7 到 2.0,步长为 0.1 i_s:从-3到15,步长为0.1 r_z:从-1100到400随机
我找到了解决问题的方法。代码很好。问题出在数据上。事实上,一些数据点(少数点)高于 10^6,这迫使等高线图不显示负点(约 -1000)。修复数据后,我可以用上面的代码绘制等高线,包括负等高线。