给定matplotlib的属性,将颜色更改为每个轮廓

时间:2014-11-30 20:20:50

标签: python matplotlib

我正在尝试使用matplotlib绘制以下内容。我有一个等高线图,但我想用给定的属性改变每个等级的强度。比方说,你有一个轮廓图,并且还有一个矢量也分配给每个点,如果矢量指向上,我想绘制一种颜色的轮廓线,如果矢量指向下,我想绘制不同的颜色。可能吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

这是一个几乎无法运行的伪代码,但这个数字并没有那么好......我确实清理了这部分代码,让我把它放在这里..

给定x,y定义网格点,z定义3D数据的网格

我创建轮廓图

cont = plt.contour(x, y, z, linewidths=0.7, colors='k', linestyles='solid')

现在让我假设我在一个网格中也有一个属性,我叫gx

paths = cont.collections[0].get_paths() 
verts = [xx.vertices for xx in paths]
pts = np.concatenate(verts)

plt.scatter(pts[::6,0],pts[::6,1],s=100,edgecolor='none',alpha=1.0,c=gx[::6], marker="s")

谢谢!

相关问题