Cartopy的极坐标轴标签

时间:2014-09-11 07:34:36

标签: python matplotlib cartopy

是否有任何支持允许极坐标轴的标签? 我注意到只有PlateCarree和Mercator支持使用ax.gridlines(draw_labels = True)。

此外,ax.set_xticks仅允许从一个直角坐标系转换到另一个直角坐标系。

以下是一些将Basemap与Cartopy进行比较的代码。我想知道是否有人制定了允许标记的解决方法。

import matplotlib.pyplot as plt
import cartopy.crs as ccrs
from mpl_toolkits.basemap import Basemap
import numpy as np

ax1 = plt.subplot(211)
m_north = Basemap(projection='nplaea',boundinglat=60,lon_0=0,ax=ax1)
m_north.drawcoastlines()
m_north.drawparallels(np.arange(-80.,81.,10.),labels=[1,0,0,0])
m_north.drawmeridians(np.arange(-180.,181.,30.),labels=[0,0,0,1])

ax2 = plt.subplot(212,projection=ccrs.NorthPolarStereo())
ax2.set_extent([0, 360, 60, 90], crs=ccrs.PlateCarree())
xticks = range(-180, 181, 60)
yticks = range(60, 90, 10)
ax2.set_xticks(xticks, crs=ccrs.NorthPolarStereo())
ax2.set_yticks(yticks, crs=ccrs.NorthPolarStereo())
ax2.coastlines()
ax2.gridlines()
plt.show()

1 个答案:

答案 0 :(得分:0)

不,遗憾的是目前没有对此表示支持。 到目前为止,只有最简单和最常见的形式被编码,因为一般情况很难。 例如,特别是关于极坐标图。(1)在某些地方,网格线会聚,因此可能需要仅标记某些网格线,以及(2)某些网格线(例如经线)可以完全位于绘图区域内。

截至目前,这真的只是等待有人接受它。