爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 16239|回复: 18

[图形美化] grads色标

[复制链接]

新浪微博达人勋

发表于 2020-4-7 17:27:44 | 显示全部楼层 |阅读模式

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

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

x
请问一下各位大佬,我grads绘图之后,色标没法自己定义,每次我是用province-basemap命令后,色标就变了,绘图颜色也变了,不是我之前设置的了,还有就是去除边界之后右上角一条线

去除边界后

去除边界后

没有去除边界

没有去除边界
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2020-4-7 17:29:53 | 显示全部楼层
本来我自己定义的是,0 0.1 0.26 0.34 0.4
但是province-basemap后就变成了 系统默认的色标
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-4-7 18:34:04 | 显示全部楼层
可以打开province-basemap看看,里面是否有使之前颜色设定失效的语句。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-4-7 21:27:27 | 显示全部楼层
把GS贴出来
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-4-7 21:32:18 | 显示全部楼层
'reinit'
'open d:/gz/data/hcfx/gzjp.ctl'
'open d:/gz/data/hcfx/t.ctl'
'set lon 103 110'
'set lat 24 30'
'set clab forced'
tt=1
while(tt<=2)
'set xlopts 1 10 0.18'
'set ylopts 1 10 0.18'
'set xlint 1'
'set ylint 1'
'set t 'tt''
'set grads off'
'set grid off'
*'set clskip 2'
*'set cint  5'
*'set ccolor 0'
'set mpdset guiz'
*'5colors.gs'
'set gxout shaded'
'set clevs -3.7 -2.4 2.4 3.7'
'd a1.2'
'cbarn'
'province-basemap guiz a1.2'
'set mpdset guiz'
'set gxout contour'
'set ccolor 0'
'set cint 20'
'set cthick 6'
'd gzjp.1'
'province-basemap guiz gzjp.1'
'printim d:/gz/data/hcfx/gzjp'%tt%'.gif white'
'c'
tt=tt+1
endwhile
;
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-4-7 21:41:20 | 显示全部楼层
苏拉苏拉 发表于 2020-4-7 18:34
可以打开province-basemap看看,里面是否有使之前颜色设定失效的语句。

能帮我看看,看不懂
* Written 12/2005 by tibet tibet-weather@163.com
****************************************************************************************
function main(args)
dxy=0.01
* There are defaults for the colors and resolution
* User must specify which mask
***********************   USAGE   *********************************************
usage1="Usage: p-map  provincname varname < color > "
usage2="color: colors of line (Default=0)"
*******************************************************************************
say args
  if (args='')
  say usage1 ;say usage2
  return
  endif
  map = subwrd(args,1)
* map is provincename
  varname = subwrd(args,2)
  color   = subwrd(args,3)
if (color = '')   ; color = 0  ; endif
file = '/out/'map'_out.txt';say "read file name="file
'set mpdset 'map  
  'd 'varname

* Make sure there's a plot already drawn
  'q gxinfo'
  line5 = sublin(result,5)
  line6 = sublin(result,6)
  xaxis = subwrd(line5,3)
  yaxis = subwrd(line5,6)
  proj  = subwrd(line6,3)

'q config'
  line = sublin(result,1)
  word = subwrd(line,2)
  version = substr(word,2,3)
  if (version >= 1.8)
    newgrads = 1
  else
    newgrads = 0
  endif
   
* See if map projection will be supported
  if (newgrads = 0)
    if (proj != 1 & proj != 2)
      say 'Error: Only scaled or latlon projections are supported with GrADS v'version
      return
    endif
  endif
* Clip image accordingly
  'q gxinfo'
  line3 = sublin(result,3)
  line4 = sublin(result,4)
  x1 = subwrd(line3,4)
  x2 = subwrd(line3,6)
  y1 = subwrd(line4,4)
  y2 = subwrd(line4,6)
  'set clip 'x1+dxy' 'x2-dxy' 'y1+dxy' 'y2-dxy

* Read the first record from the polygon file
  result = read(file)
  rc = sublin(result,1)
  rc = subwrd(rc,1)
  
  if (rc!=0)
    say 'Error reading 'file
    return
  endif
  nwcmd = sublin(result,2)
flag = 1
  while (flag)
    ignore = 0
    wcmd = nwcmd
    while(1)
      result = read(file)
      rc = sublin(result,1)
      rc = subwrd(rc,1)
      if (rc!=0)
        flag = 0
        break
      else
        nwcmd = sublin(result,2)
        if (subwrd(nwcmd,5) != 'draw')
          wcmd = wcmd % nwcmd
        else
          break
        endif
      endif
    endwhile

*   Get the lat/lon range of the current dimension environment
    'q dims'
    line1 = sublin(result,2)
    line2 = sublin(result,3)
    minlon = subwrd(line1,6)
    maxlon = subwrd(line1,8)
    minlat = subwrd(line2,6)
    maxlat = subwrd(line2,8)
*   The range of the polygon is specified in the first four words of the record
    minwx = subwrd(wcmd,1)
    maxwx = subwrd(wcmd,2)
    minwy = subwrd(wcmd,3)
    maxwy = subwrd(wcmd,4)

*   If the polygon is outside the current dimension, ignore it
    if (minwx >= maxlon) ; ignore = 1 ; endif
    if (maxwx <= minlon) ; ignore = 1 ; endif
    if (minwy >= maxlat) ; ignore = 1 ; endif
    if (maxwy <= minlat) ; ignore = 1 ; endif

    if (!ignore)   
      count = 6
      nvert = 1
      if (newgrads)  
        cmd = 'draw mappoly '
       else
        cmd = 'draw polyf '
      endif
      while (1)
        countx = count
        county = count + 1
        wx = subwrd(wcmd,countx)
        wy = subwrd(wcmd,county)
        if ((wx = '') | (wy = ''))
          break
        endif

*       Convert world coordinates to screen coordinates if necessary
        if (newgrads)  
          sx = wx
          sy = wy
       else
          'q w2xy 'wx' 'wy
          sx = subwrd(result,3)
          sy = subwrd(result,6)
        endif

*       Append the coordinates to the draw command
        cmd = cmd%sx' 'sy' '
       count = count + 2
      endwhile   

*     Draw the polygon
      'set line 'color
       cmd
    endif
  endwhile
'draw map'
  rc = close(file)
  return
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-4-8 13:16:51 | 显示全部楼层
你gs里颜色设定语句被你注释掉了啊,出来系统默认色不是正常么
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-4-8 15:56:24 | 显示全部楼层
苏拉苏拉 发表于 2020-4-8 13:16
你gs里颜色设定语句被你注释掉了啊,出来系统默认色不是正常么

即使我把注释去了也一样
我的意思时我自己设置的等值线,我通过province-basemap之后,色标的分辨率就变了,编程系统默认的了,province-basemap.gs已给出,
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-4-9 16:12:26 | 显示全部楼层
海大大 发表于 2020-4-8 15:56
即使我把注释去了也一样
我的意思时我自己设置的等值线,我通过province-basemap之后,色标的分辨率就变 ...

不太懂你的意思,你说“本来我自己定义的是,0 0.1 0.26 0.34 0.4”,你画的图里色标不就是这么个分辨率么。province-basemap没问题。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-4-9 20:24:57 | 显示全部楼层
苏拉苏拉 发表于 2020-4-9 16:12
不太懂你的意思,你说“本来我自己定义的是,0 0.1 0.26 0.34 0.4”,你画的图里色标不就是这么个分辨率 ...

色标是没变,那是因为我在province-basemap之前就执行cbarn,但是图变了你发现了吗?,如果我在province-basemap后面cbarn色标就是变了的
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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