python-3.x - 坐标系变换
问题描述
我有 matlab 用 putpole 和 rotatem 制作的网格上的数据。我无权访问原始数据,但想使用 Python 处理它。网格的原点是 78 度和 11 度(星形标记),但是用 cartopy 绘制它总是把北极放在中间,所以我的数据有点偏离。
有人知道如何解决吗?我尝试使用 false_northing 但这没有任何作用。请忽略我正在尝试修复地图的可怕彩条。
fig=plt.figure(figsize=(8,8))
ax = fig.add_subplot(1,1,1,projection=ccrs.NorthPolarStereo())
cmap = plt.get_cmap('jet')
#plotting settings
ax.set_extent([-180, 180, 40, 90], ccrs.PlateCarree())
ax.gridlines(linewidth=2, color='k', alpha=0.7, linestyle='--')
ax.coastlines(zorder=3)
ZEP_coords=(78.9,11.8)
ax.plot(ZEP_coords,'*',c='orangered', markersize=25, transform=ccrs.PlateCarree())
data_mod, lon_mod = add_cyclic_point(a, coord=lon)
plt.contourf(lon_mod,lat,data_mod,20,vmin=0, vmax=0.05,cmap=cmap,transform=ccrs.PlateCarree())
plt.colorbar()
绘制它现在的样子:
数据结构和我拥有的所有信息:
解决方案
NorthPolarStereo
如果您使用Stereographic
投影代替,则可以同时指定中心纬度和经度。您可能还想查看RotatedPole
投影。
推荐阅读
- numpy - 使用点绘制线性回归线
- python - 如何从另一个 Python 文件中获取值?
- python - 使用 python curses 库进行多线程时的光标输入错误
- kotlin - 有没有办法为 Kotlin 类定义隐式 ctor?
- reactjs - 动态表单 - 如何使用反应钩子更新“onChange”事件中多个表单字段的值?
- javascript - Highchart 条形图从中心而不是左侧开始条形图
- flutter - Flutter 通过服务器响应构建 TabBarView 项
- python - 有没有正确的方法可以使这段代码工作?
- go - 如何将字符串转换为结构数组
- java - 无法访问集合下的文档