消除python pcolor底图中的网格/网格线

时间:2011-12-06 06:37:19

标签: python

我正在使用Basemap和pcolor绘制圆柱投影上的标量场。我遇到的问题是绘制网格线:我不想看到线条,只看到彩色方块。如果我想要网格线,我会使用pcolormesh,对吧?

帮助说设置edgecolors ='none'应该消除这些行(与现在弃用的shading ='flat'相同)。就我而言,对于我试图绘制的真实数据,它似乎没有这样做。

在测试中,我在地图的一部分顶部上方涂了一个小方块:我刚制作了一个新的3x3随机数组和一些合适的lat / lon矩阵。在那个小测试补丁中,各个颜色之间的线条是不可见的(我想要的);我只是不知道为什么,我使用了与真实数据相同的技术。

不需要的网格是黑色的,因为地图背景为黑色map.drawmapboundary(fill_color='0.05'),其中'map'是Basemap对象:

map = Basemap(projection='cyl',
              resolution='l', 
              llcrnrlon=lon_min, 
              llcrnrlat=lat_min, 
              urcrnrlon=lon_max,
              urcrnrlat=lat_max)

当我将背景留白时,我看到的是白色网格而不是黑色。

我使用的pcolor命令是:

mymapim = map.pcolor(mapxvals, mapyvals, datafield, edgecolors='none', vmin=-5, vmax=35, cmap=my_cmap)

'datafield'是一个屏蔽数组(不确定屏蔽是否可能与它有关)。 'map * vals'是矩阵,其行和列比数据域多一个。

所以我花了很多时间试图解决这个问题并尝试在网上找到答案,但我想我会借此机会向社区提出我的第一个问题。谢谢你的任何建议。 (我没有长时间使用python。)

我试图附上一张显示问题的图片,但直到我明显得到一些声誉我才能做到。

的Ta!

1 个答案:

答案 0 :(得分:0)

我不知道我是否完全理解你的问题。 Here是关于如何在pcolor中使用imshowcontourBasemap的一些示例。