我使用cartopy绘制我的地图。它是一个很棒的工具! 对于我的一些数据,我遇到的问题是数据没有正确映射到0deg或日期线。请参阅下面的示例。
我知道matplotlib.basemap中的相同功能,可以使用add_cyclic例程解决它。我想知道是否有人可以建议如何最好地解决这个问题。
谢谢!
亚历
答案 0 :(得分:5)
在绘制这样的全局数据时,您总是需要为输入数据和坐标添加一个循环点。我不相信Cartopy目前包含了为您执行此操作的功能,但您可以暂时自行完成。假设您有1d经度数组和2d数据数组,其中第一个维度是纬度,第二个维度是经度:
import numpy as np
dlon = lons[1] - lons[0]
new_lons = np.concatenate((lons, lons[-1:] + dlon))
new_data = np.concatenate((data, data[:, 0:1]), axis=1)
如果您有不同形状的数据或坐标,则需要根据需要进行调整。
答案 1 :(得分:4)
cartopy开发团队在开发分支中包含了所需的功能。有关详细信息,请参阅here