2011-06-17 47 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