我试图在Python中制作一个色彩图,除了这个令人烦恼的小麻烦之外我还有一切让地图看起来很糟糕。
代码很简单。我只是使用值矩阵并使用tricontourf绘制它们。我是在我的情节中循环收集并改变边缘颜色和线宽。
我注意到的是以下内容。说我想要在每个轮廓周围都有一条细白线,然后我就这样做了。
CS = plt.tricontourf(X,Y,Z, 70, cmap=cm.seismic, antialiased=True)
print CS.collections
for c in CS.collections:
c.set_edgecolor('white')
c.set_linewidth(1)
plt.colorbar()
plt.show()
并获取
现在显然我们看看这个并说,好吧,轮廓周围的白线看起来很糟糕,让我们摆脱它们。您可以通过多种方式执行此操作,可能是将linewidth = 0或颜色设置为' none'。我将在以下代码中执行这两项操作。我们有
CS = plt.tricontourf(X,Y,Z, 70, cmap=cm.seismic, antialiased=True)
print CS.collections
for c in CS.collections:
c.set_edgecolor('none')
c.set_linewidth(0)
plt.colorbar()
plt.show()
并获取
更好,但是你还能看到轮廓的微弱轮廓吗?这是不只是色彩图中的颜色偏移 - 这显然是穿过每个轮廓的非常轻的线条。
有没有办法以某种方式混合色彩图,这样就不会发生?谢谢。