爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6236|回复: 6

[脚本编辑] Python之Anaconda编译器做EOF分析借鉴他人后小结

[复制链接]

新浪微博达人勋

发表于 2019-3-30 19:29:33 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
最近在做EOF分析,原始脚本是参考了——python做EOF并绘制前3个特征向量和时间序列http://bbs.06climate.com/forum.p ... 1&fromuid=69428(出处: 气象家园)
谢谢这位大佬的分享,学到了很多!
但我要处理的数据是四维(time,level,longitude,latitude)的风场,涉及到固定一个level的问题,而参考脚本是三维的,本是个小问题,但对于python的初学者(就是我),还不是很清楚。这里我把修改后的脚本附在这里,并加了一些必要的说明。
  1. import netCDF4
  2. import matplotlib.pyplot as plt
  3. import numpy as np
  4. from mpl_toolkits.basemap import Basemap
  5. from eofs.standard import Eof

  6. # read uwind
  7. nc_obj = netCDF4.Dataset('D:\\wind_u_v\\ERA\\v.mon.mean.1958.2016.nc', 'r')
  8. print(nc_obj.variables.keys())
  9. lon = nc_obj.variables['longitude'][:]
  10. lat = nc_obj.variables['latitude'][:]
  11. time = nc_obj.variables['time'][:]
  12. level = nc_obj.variables['level'][:]
  13. v = nc_obj.variables['v'][:, 2, :, :] # 重点就是这里啦,我要研究850hPa,而level = 850hPa是位于’level‘的第三个位置,所以index是2
  14. nc_obj.close()

  15. # 截取研究区域和时段u风数据
  16. lat_bounds = [-5, 30]
  17. lon_bounds = [100, 130]
  18. # latitude lower and upper index
复制代码

但其实现在mv-eof分析更有意义,而且地图处理的话也时兴用cartopy,所以下一步准备向这方面靠拢,做出来了再给大家分享。
这里附加一下mv-eof的官方说明网址。https://ajdawson.github.io/eofs/userguide/multivariate.html

本帖被以下淘专辑推荐:

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-3-31 15:38:44 | 显示全部楼层
博主是什么问题,改了脚本后,不能出图吗
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-3-31 15:59:27 | 显示全部楼层
Orz 发表于 2019-3-31 15:38
博主是什么问题,改了脚本后,不能出图吗

修改之前不能出图,改了之后可以
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-31 16:13:04 | 显示全部楼层
LemonTree007 发表于 2019-3-31 15:59
修改之前不能出图,改了之后可以

能把修改后的代码放出来吗,我也是刚学习的,想参考一下,谢谢
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-4-2 19:14:08 | 显示全部楼层
Orz 发表于 2019-3-31 16:13
能把修改后的代码放出来吗,我也是刚学习的,想参考一下,谢谢

我粘贴的就是修改之后的,不然我放个原来的有啥意思???
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-4-6 16:13:43 | 显示全部楼层
我想问一下,利用站点数据如何做EOF 分析呢
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-4-7 19:51:27 | 显示全部楼层
chongzika 发表于 2019-4-6 16:13
我想问一下,利用站点数据如何做EOF 分析呢

没有做过,家园应该有
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表