爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 17281|回复: 1

[脚本编辑] 求助:GrADS作闪电密度图,显示屏出现一片红

[复制链接]

新浪微博达人勋

发表于 2020-6-16 13:47:48 | 显示全部楼层 |阅读模式
20金钱
原闪电数据格式:日期,时间,纬度,经度,时间差,观测站点数

Fortran写.grd文件:
program flash_density_test
implicit none

!声明变量
character(len=512)::cRead
character(len=10)::datee
character(len=15)::time
real::lat,lon
character(len=4)::timingerror
integer::station
integer::status1=0
integer::i,j
integer,parameter::nx=14,ny=13
integer::md(nx,ny)

do i=1,nx
    do j=1,ny
        md(i,j)=0
    end do
end do

!读取文件
open(11,file='2006.txt',status='old')
OPEN(12,file='output.txt',status='replace')
OPEN(13,file='draw.grd',form='unformatted',status='replace')

do while(.true.)
    read(11,"(A512)",iostat=status1)cRead
    if(status1/=0) exit
    CALL parserRead(cRead)
    write(*,*)lat,lon
    lon=lon-97
    lat=lat-21
   
    do i=1,nx
        do j=1,ny
            if(lon>=(i-1).and.lon<i.AND.lat>=(j-1).AND.lat<j)then
                md(i,j)=md(i,j)+1
            end if
        end do
    end do
end do

close(11)
write(12,'(1x,14i7)')((md(i,j),i=1,nx),j=1,ny)
CLOSE(12)
write(13)((md(i,j),i=1,nx),j=1,ny)
CLOSE(13)

contains
    !调用子程序
    subroutine parserRead(c)
        character(len=*)::c
        integer::j
        
        do j=1,LEN_TRIM(c)
            if (c(j:j)=="/") c(j:j)="|"
        end do
        READ(c,*)datee,time,lat,lon,timingerror,station
        do j=1,LEN_TRIM(datee)
            if (datee(j:j)=="|") datee(j:j)="/"
        end do
    end subroutine parserRead
end program

output.txt截图放上。


.ctl文件
DSET D:/Projects/wwlln/all/flash_density/test/draw.grd
TITLE sdmd
UNDEF 9999
XDEF  14 LINEAR 97.0 1.0
YDEF  13 LINEAR 21.0 1.0
ZDEF  1 Linear  1 1
TDEF  1 LINEAR 1JAN2016 1mo
VARS  1
md 0 99 sdmd
ENDVARS

grads错误截图展示:



             自动判断 中文中文(简体)中文(香港)中文(繁体)英语日语朝鲜语德语法语俄语泰语南非语阿拉伯语阿塞拜疆语比利时语保加利亚语加泰隆语捷克语威尔士语丹麦语第维埃语希腊语世界语西班牙语爱沙尼亚语巴士克语法斯语芬兰语法罗语加里西亚语古吉拉特语希伯来语印地语克罗地亚语匈牙利语亚美尼亚语印度尼西亚语冰岛语意大利语格鲁吉亚语哈萨克语卡纳拉语孔卡尼语吉尔吉斯语立陶宛语拉脱维亚语毛利语马其顿语蒙古语马拉地语马来语马耳他语挪威语(伯克梅尔)荷兰语北梭托语旁遮普语波兰语葡萄牙语克丘亚语罗马尼亚语梵文北萨摩斯语斯洛伐克语斯洛文尼亚语阿尔巴尼亚语瑞典语斯瓦希里语叙利亚语泰米尔语泰卢固语塔加路语茨瓦纳语土耳其语宗加语鞑靼语乌克兰语乌都语乌兹别克语越南语班图语祖鲁语      自动选择 中文中文(简体)中文(香港)中文(繁体)英语日语朝鲜语德语法语俄语泰语南非语阿拉伯语阿塞拜疆语比利时语保加利亚语加泰隆语捷克语威尔士语丹麦语第维埃语希腊语世界语西班牙语爱沙尼亚语巴士克语法斯语芬兰语法罗语加里西亚语古吉拉特语希伯来语印地语克罗地亚语匈牙利语亚美尼亚语印度尼西亚语冰岛语意大利语格鲁吉亚语哈萨克语卡纳拉语孔卡尼语吉尔吉斯语立陶宛语拉脱维亚语毛利语马其顿语蒙古语马拉地语马来语马耳他语挪威语(伯克梅尔)荷兰语北梭托语旁遮普语波兰语葡萄牙语克丘亚语罗马尼亚语梵文北萨摩斯语斯洛伐克语斯洛文尼亚语阿尔巴尼亚语瑞典语斯瓦希里语叙利亚语泰米尔语泰卢固语塔加路语茨瓦纳语土耳其语宗加语鞑靼语乌克兰语乌都语乌兹别克语越南语班图语祖鲁语     有道翻译 百度翻译 谷歌翻译 谷歌翻译(国内)   翻译    朗读 复制     正在查询,请稍候……    重试      朗读 复制        复制      朗读 复制      via 谷歌翻译(国内)   译

grads出现的问题

grads出现的问题

output.txt

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

新浪微博达人勋

 楼主| 发表于 2020-6-16 15:08:48 | 显示全部楼层
已解决
问题在:integer::md(nx,ny)
改成 real,dimension(nx,ny)::md
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

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

本版积分规则

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

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

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