在日期线上管理和绘制数据

时间:2018-06-22 03:02:44

标签: python numpy

我知道这个问题以前曾被问过,但是重点是Cartopy。

我目前的工作是在日期线上观察一个现象,并将在跨越日期线的太平洋中的一个盒子上工作。管理和绘制这些数据一直是一个挑战,因为一个索引的值从179到-179。

我可以使用

轻松地划分纬度
lat_mask=[(lat<=20)&(lat>=-20)]  #Tropics +-20* only
lat_masked=lat[lat_mask]

哪个工作正常。

lon=np.add(lon,180)  #Reset longitudes to 0-360 from -180 to 180
lon_mask=[(lon>=110)&(lon<=300)]  

也可以正常工作...但是要与我正在查看的确切的相反区域相对应。 但是我想要的区域:

lon_mask=[(lon<=110)|(lon>=300)]  

不起作用。 我可以分别进行处理,并为日期线的东,西各区域制作图形,但我希望将它们组合为一个数据集/图形。这样我就有了一个[300-360 0-110]的蒙版,可以将其绘制为单个图像。

我正在寻找一种存储信息的简便方法,以提高可用性和可绘制性。

我一直在努力寻找如何重新索引所有索引的方法,但这使我的头部受伤。我正在寻找一种健壮解决方案,因为它将经常使用。我本来以为这是matplotlib问题,但我认为这是存储数据的方式。

编辑:更改为| -但是现在有这个问题。

我喜欢

lon= np.roll(lon,len(lon)/2)

否则可能会有助于将日期线有效地移到其他地方,但我不太清楚。

欢呼

2 个答案:

答案 0 :(得分:0)

geom_hline(aes(yintercept = mean(avgmpg)))是您想要的。经度是 小于110 大于300。当然,数字不能同时小于110 大于300。

答案 1 :(得分:0)

使用的XArray:

present(swipeNavigationController, animated: true, completion: nil)