极地立体图

时间:2012-12-03 18:55:27

标签: python matplotlib cartopy

是否可以使用最新版本的纸板在极地立体地图上绘制轮廓? 我想看看如何做到这一点的一个例子,因为我正努力自己解决这个问题!

1 个答案:

答案 0 :(得分:2)

立体投影引起了一些令人头疼的问题,并且可能是投影引起了纸币多边形转换代码的最大问题。

以下示例显示了如何使用cartopy生成极坐标立体图。 请注意:即使使用此代码,也可以调整示例数据分辨率,并发现绘图需要大约30分钟才能实际渲染(这是一个我们需要尽快排序的错误)。

import cartopy.crs as ccrs
import matplotlib.pyplot as plt

from cartopy.examples.waves import sample_data

ax = plt.axes(projection=ccrs.NorthPolarStereo())

x, y, z = sample_data((100, 200))
cs = ax.contourf(x, y, z, 50,
                 transform=ccrs.PlateCarree(),
                 cmap='gist_ncar')
ax.coastlines()

# without the set_global, currently, the plot is tiny because the limits
# are being erroneously being set (opened issue for that)
ax.set_global()

plt.show()

polar stereographic contour plot

希望这会告诉你如何应该在纸板上制作极地立体轮廓图。如果您的数据出现问题,请查看open issues tagged "Geometry transforms",看看您是否收到类似内容,如果没有,请go ahead and open an issue,我们可以查看。

注意:这个答案与cartopy v0.5.x有关(即在v0.5发布之前),这里提到的许多错误应该在未来版本中被压制。

希望有所帮助,