爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9309|回复: 13

[秀图] 求助!grads站点资料出图有问题

[复制链接]

新浪微博达人勋

发表于 2013-1-4 11:32:37 | 显示全部楼层 |阅读模式

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

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

x
diamond 2 11年07月29日08时500百帕高空观测
12 07 29 08  500 428
  1152   14.37   67.27   13    1  560  -15  1.6  210   17
  1241    9.60   63.70    7    1  557  -16   27  205   20
  1415    5.63   58.88    9    1  551  -19   29  200   30
  2836   26.65   67.37  179    1  567  -15  2.1  255   17
  2963   23.50   60.82  103    1  576  -12  1.9  210   16
  3005   -1.17   60.13   84    1  544  -25  4.3  170    9
  3354   -1.24   53.00  117    1  552  -24    7  240   10
  3808   -5.31   50.22   88    1  557  -22   12  275   16
  3953  -10.24   51.93   14    1  555  -23   15  280   11
  4018  -22.59   63.97   38    1  568  -15   .4    5   22
  4220  -52.74   68.70   47    1  559  -17   15  210    9
  4270  -45.41   61.18   26    1  560  -17   10  165   13
  4320  -18.66   76.77   12    1  560  -12  2.0  285   12

使用数据如上,缺测值为9999
program station
      parameter (mt=428)    ! mt means nums of station
      character stid(mt)*8

      integer nflag,nlev
      real lat(mt),lon(mt),tim,td(mt)
   integer high(mt),number(mt),height(mt),temp(mt),ud(mt),us(mt)

      open(30,file='2908.txt')     
read(30,*)
read(30,*)
do i=1,mt
      read(30,*)stid(i),lon(i),lat(i),high(i),number(i),height(i),temp(i),td(i),ud(i),us(i)
end do   
close (30)

      tim=0.0
      nflag=1
      nlev=1
open(40,file='2908.dat',form='binary')
      do i=1,mt
      write(40)stid(i),lat(i),lon(i),tim,nlev,nflag,height(i)

   write(*,*)stid(i),lon(i),lat(i),tim,nlev,nflag,height(i)
      end do
       nlev=0
      write(40)stid(mt-1),lat(mt-1),lon(mt-1),tim,nlev,nflag

close(40)
end
读取的程序如上,运行显示无错误,图片1 360截图20130104111426140.jpg .
dset f:\2908.dat
dtype station
stnmap f:\height.map
undef 9999
title 500hpa height
tdef 1  linear  29jul2012 1DY
vars 1
h      0   99   height
endvars
根据上面ctl运行出来的height.map也貌似没有错误 360截图20130104112258593.jpg

然后编写了gs文件
'reinit'
'open f:\height.ctl'
'set lat 20 60'
'set lon 90 140'
'd h'
'printim f:\height.png white'

最终出图如下 try.png
感觉数据就没有读进去,请问原因出在哪?求指点~~



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

新浪微博达人勋

发表于 2013-1-4 12:38:55 | 显示全部楼层
有没有人提醒过你,这里的   integer high(mt),number(mt),height(mt),temp(mt),ud(mt),us(mt)数据类型必须是实型数,我记得我以前出过这样的问题,你试试看先。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-1-4 14:14:59 | 显示全部楼层
en 改下实数型试一下~ 虽然整型可以读
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-1-4 16:04:13 | 显示全部楼层

回帖奖励 +1 金钱

你的gs很神奇啊,不是说站资料画图吗?我怎么连打开地图背景文件的命令都没看见,插值命令你也没使用啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-1-4 16:22:25 | 显示全部楼层

就是想简单说明下,插值命令不是在转换成格点数据才需要嘛》?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-1-4 16:24:55 | 显示全部楼层
做个霸气的木头 发表于 2013-1-4 12:38
有没有人提醒过你,这里的   integer high(mt),number(mt),height(mt),temp(mt),ud(mt),us(mt)数据类型必须 ...

谢谢,换成实行的果然就写的这行就正确了,但是nlev和nflag还是不对啊,怎么不是1能? 1152       14.37000       67.27000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   560.0000   
1241       9.600000       63.70000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   557.0000   
1415       5.630000       58.88000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   551.0000   
2836       26.65000       67.37000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   567.0000   
2963       23.50000       60.82000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   576.0000   
3005      -1.170000       60.13000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   544.0000   
3354      -1.240000       53.00000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   552.0000   
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-1-4 16:26:49 | 显示全部楼层
爱的侍者 发表于 2013-1-4 14:14
en 改下实数型试一下~ 虽然整型可以读

谢谢,换成实行的果然就写的这行就正确了,但是nlev和nflag还是不对啊,不是1,居然是1.4012985E-45
,请问这是怎么回事?
1152       14.37000       67.27000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   560.0000   
1241       9.600000       63.70000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   557.0000   
1415       5.630000       58.88000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   551.0000   
2836       26.65000       67.37000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   567.0000   
2963       23.50000       60.82000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   576.0000   
3005      -1.170000       60.13000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   544.0000   
3354      -1.240000       53.00000      0.0000000E+00  1.4012985E-45
  1.4012985E-45   552.0000   
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-1-4 16:45:38 | 显示全部楼层
whmooncool 发表于 2013-1-4 16:26
谢谢,换成实行的果然就写的这行就正确了,但是nlev和nflag还是不对啊,不是1,居然是1.4012985E-45
,请 ...

       nlev=0
      write(40)stid(mt-1),lat(mt-1),lon(mt-1),tim,nlev,nflag
你这个是啥意思
不是只有一层数据吗??
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-1-4 19:01:02 | 显示全部楼层

回帖奖励 +1 金钱

whmooncool 发表于 2013-1-4 16:24
谢谢,换成实行的果然就写的这行就正确了,但是nlev和nflag还是不对啊,怎么不是1能? 1152       14.370 ...

应该是小问题,自己检查下吧
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-1-4 19:26:56 | 显示全部楼层
whmooncool 发表于 2013-1-4 16:22
就是想简单说明下,插值命令不是在转换成格点数据才需要嘛》?

那你最后出图不就是要插值成个点的么
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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