我在一张图上画了三张地图。出于某种原因,当我给X轴加上标签时,这些数字都挤在图的一边。有没有人可以把这些值分开?在
for j in xrange(0,3):
data = mydatalist[j]
a.append(fig.add_subplot(3,2,j+1))]
m.append(Basemap(projection='mill', llcrnrlat=-90, urcrnrlat=90, \
llcrnrlon=30,urcrnrlon=390, resolution='c', ax=a[j]))
x=np.linspace(30,390,288)
y = np.linspace(-90, 90, 234)
x, y = np.meshgrid(x, y)
x, y = m[j](x,y)
cintervals = [-0.1,-0.09, -0.08, -0.07, -0.06,-0.05, -0.04, -0.03, -0.02,-0.01,\
0, 0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1]
mesh = m[j].contourf(x,y,data,cintervals, cmap=plt.cm.jet)
xlab=np.concatenate([np.arange(30,181,30),np.arange(-150,31,30)])
plt.xticks(np.linspace(30, 390, 13),xlab)
plt.tick_params(labelsize=8)
plt.show()
切换到Gall赤平投影为我解决了这个问题,尽管我不确定为什么它在Miller投影上不起作用。在
你的问题是地图坐标和纬度/经度之间的坐标不匹配
将x记号指定为沿x轴显示,间距根据
但是,如果您查看}。在
x
中的值(即在contourf
行中绘制的实际x坐标),您会看到它们从0
到{为了避免这种情况-更换
^{pr2}$与
注意-您可以用一个更小但完整的示例来产生这种效果,这可能有助于您隔离问题。看看如何生成Minimal, complete and verifiable example。目前,您的代码没有运行,因为它缺少
a
、m
、mydatalist
和所需的导入。在我在下面的代码中加入了您可能提供的代码—保留子批次循环—尽管实际上您可能只使用一个绘图而不是子绘图,也会获得相同的效果。在
相关问题 更多 >
编程相关推荐