zoukankan      html  css  js  c++  java
  • MeteoInfoLab脚本示例:读取文本文件

    此例中的降水文本文件下载自“中国气象科学数据共享服务网”(http://cdc.nmic.cn/sksj.do?method=ssrjscp),其实是ESRI的文本格点数据格式。对于文本数据,MeteoInfoLab中有asciiread函数来读取数据,第一个参数是文件名,然后可以有一些可选参数,headerlines=6指的是读取数据前跳过6行头文件,对于非逗号分隔的文件还需要制定数据分隔符号,比如:delimiter=',' (逗号分隔),shape=(72,128)指定了将数据读入一个72*168的二维数组中。由于Y维是反向的(正常是从南至被),需要对数组进行Y维反向处理:rain1 = rain[::-1,:]。由于该数据中国区域外都是缺测值,画出来的图在边界地区会有很多锯齿。其实气象是无国界的,向这种只提供国内区域的格点数据实在没什么意思。数据的头文件中有经纬度范围,据此创建了x, y变量来表示经纬度坐标矢量。

    脚本程序如下:

    rain = asciiread('D:/Temp/ascii/SURF_CLI_CHN_PRE_DAY_GRID_0.5-20120702.txt',headerlines=6,shape=(72,128))
    rain1 = rain[::-1,:]
    x = arange1(72, 128, 0.5)
    y = arange1(18, 72, 0.5)
    axesm()
    mlayer = shaperead('D:/Temp/map/country1.shp')
    geoshow(mlayer)
    layer = contourfm(x, y, rain1, 20)
    #layer = imshowm(x, y, rain1, 20)
    title('Precipitation')
    ylabel('Latitude')
    xlabel('Longitude')
    colorbar(layer)
    show()
  • 相关阅读:
    hdu 4460spfa用map来实现
    hdu 2579
    hdu 2845
    hdu 4462
    hdu 4557
    hdu 4639
    URAL 2078 Bowling game
    UVA
    HDU 5773 The All-purpose Zero 脑洞LIS
    Codeforces Round #368 (Div. 2) C. Pythagorean Triples 数学
  • 原文地址:https://www.cnblogs.com/yaqiang/p/4585810.html
Copyright © 2011-2022 走看看