MeteoInfoLab脚本示例:MODIS AOD
2024-10-09 21:03:44
MODIS的气溶胶光学厚度(AOD)产品应用很广,数据可以在Giovanni上下载:http://disc.sci.gsfc.nasa.gov/giovanni/overview/index.html。有HDF, netCDF和文本格式,这里示例打开netCDF格式数据,提取AOD数据并绘图。
脚本程序如下:
f = addfile('D:/Temp/nc/MOD08_D3.A2015121.051.2015122103938.pscs_000500931513.Optical_Depth_Land_And_Ocean_Mean.G3.nc')
v_aod = f['Optical_Depth_Land_And_Ocean_Mean']
aod = v_aod[[33,41],[113,122]]
axesm()
china = shaperead('D:/Temp/map/bou2_4p.shp')
geoshow(china, linecolor='gray')
world = shaperead('D:/Temp/map/country1.shp')
geoshow(world)
levels = arange(0, 1.0, 0.02)
layer = contourfm(aod, levels, interpolate=True)
title('Aerosol Optical Depth at 550 nm')
colorbar(layer)
show()
要和网站上的图形一致的话需要在等值线追踪前将格点数据插值成2倍的分辨率(layer = contourfm(aod, levels, interpolate=True))。
HDF格式数据文件中的经纬度维有问题,需要在脚本中指定,示例如下:
f = addfile('D:/Temp/hdf/MOD08_D3.A2015121.051.2015122103938.pscs_000500931513.Optical_Depth_Land_And_Ocean_Mean.G3.hdf')
v_aod = f['Optical_Depth_Land_And_Ocean_Mean']
#Set x/y
x = linspace(-180.0,180.0, 360)
y = linspace(-90.0,90.0, 180)
#Set x/y dimensions
v_aod.setdim('Y', y)
v_aod.setdim('X', x)
#Get data
aod = v_aod[[33,41],[113,122]]
#Plot
axesm()
china = shaperead('D:/Temp/map/bou2_4p.shp')
geoshow(china, linecolor='gray')
world = shaperead('D:/Temp/map/country1.shp')
geoshow(world)
levels = arange(0, 1.0, 0.02)
layer = contourfm(aod, levels, interpolate=True)
title('Aerosol Optical Depth at 550 nm')
colorbar(layer)
show()
最新文章
- 直播推流端弱网优化策略 | 直播 SDK 性能优化实践
- [异常解决] ubuntukylin16.04 LTS中关于flash安装和使用不了的问题解决
- 搭建 windows(7)下Xgboost(0.4)环境 (python,java)以及使用介绍及参数调优
- OWIN与Katana详解
- 《DSP using MATLAB》示例Example5.23
- CacheHelper
- 用sql 语句给字段添加描述
- YAML 技术研究
- 利用 Gulp 处理前端工作流程
- 邮件江湖群狼环伺 U-Mail邮件系统防狼有术
- 【Linux】linux常用基本命令(转)
- 【android】android调用模拟器超时问题
- VC 无标题栏对话框移动
- selenium 远程调用浏览器
- java中static关键字解析
- Linux特殊字符用法、后台命令管理
- 原生js简单调用百度翻译API实现的翻译工具
- [ZJOI 2015]幻想乡战略游戏
- linux上遇到tomcat报Out of Memory错误,导致jenkins崩溃的问题
- Java8 方法引用