zoukankan      html  css  js  c++  java
  • MeteoInfoLab脚本示例:MODIS AOD

    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()
  • 相关阅读:
    LInux常用命令:总结
    SpringBoot声明式事务(转)
    连接linux客户端工具
    查看servlet 3.0文档方法
    通过spring.io找spring历史版本
    归并排序(比希尔还要快)
    快速排序(比希尔排序还要快)
    希尔排序(交换式和移位式)
    插入排序
    选择排序(时间复杂度O(n^2))
  • 原文地址:https://www.cnblogs.com/yaqiang/p/4585754.html
Copyright © 2011-2022 走看看