2011-06-17 82 views
3

我卡試圖掩飾數據的散點圖。所有數據似乎都是陰謀。Python的散點圖與numpy的掩蔽陣列

我使用numpy的數組作爲顯示在下面的代碼段。我在想,也許我不能掩蓋「c」陣列。我似乎無法找到任何文件來做這件事。我會嘗試使用「s」數組。

任何幫助是極大的讚賞。


yy = NP.ma.array(yy) 
xx = NP.ma.array(xx) 
zz_masked = NP.ma.masked_where(zz <= 1.0e6 , zz) 
scatter(xx,yy,s=15,c=zz_masked, edgecolors='none') 
cbar = colorbar() 
show() 

回答

1

爲我工作。每次調用scatter()都會獲得自己的顏色條,因爲每個scatter()的顏色都被歸一化爲其自己的數據。你正在使用哪個版本的matplotlib?

import pylab as plt 
import numpy as np 

x = np.linspace(0, 1, 100) 
y = x**2 
z = y 
z_masked = np.ma.masked_where(z > 0.5, z) 

plt.scatter(x, y, c=z, s=15, edgecolors='none') 
plt.colorbar() 
plt.scatter(x+1, y, c=z_masked, s=15, edgecolors='none') 
plt.colorbar() 
plt.show() 
+0

我意識到我忘了將zz數組更改爲numpy數組。 zz = NP.ma.array(z)當我做出這個改變是正常的。我的錯。謝謝你的回覆。 – Bob