爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5992|回复: 4

叠加长江黄河出错

[复制链接]
发表于 2017-3-12 21:19:20 | 显示全部楼层 |阅读模式

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

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

x
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"

undef ("add_Changjiang_Huanghe")
procedure add_Changjiang_Huanghe(wks[1]:graphic,plot[1]:graphic,opt[1]:logical)
local resp,wks,opt,nhh,ncj,dumh,dumc
begin
  xptcj=(/122.050  ,121.850  ,121.583  ,121.383  ,121.267  ,121.100  , \
          120.967  ,120.850  ,120.700  ,120.567  ,120.500  ,120.333  , \
          120.167  ,120.050  ,119.917  ,119.900  ,119.826  ,118.971  , \
          118.535  ,117.984  ,117.921  ,117.184  ,116.736  ,116.164  , \
          115.638  ,115.021  ,114.650  ,114.065  ,114.275  ,113.876  , \
          113.262  ,113.116  ,113.232  ,112.811  ,112.783  ,112.583  , \
          112.635  ,112.418  ,112.426  ,112.066  ,111.763  ,111.348  , \
          110.162  ,108.836  ,107.930  ,106.797  ,106.352  ,106.085  , \
          106.044  ,105.802  ,105.313  ,105.196  ,104.670  ,104.059  , \
          104.087  ,103.660  ,103.711  ,103.094  ,103.192  ,102.887  , \
          102.776  ,102.076  ,102.153  ,102.010  ,101.720  ,101.667  , \
          101.150  ,100.660  ,100.602  ,100.751  ,100.613  ,100.177  , \
           99.860  , 99.367  , 99.164  , 98.818  , 99.089  , 98.422  , \
           97.676  , 97.226  , 96.136  , 95.545  , 94.759  , 94.264  , \
           94.018  , 93.033  , 91.430  , 90.778  /)
  yptcj=(/ 31.425  , 31.425  , 31.512  , 31.613  , 31.675  , 31.800  , \
           31.817  , 31.963  , 32.033  , 32.100  , 32.050  , 32.000  , \
           31.987  , 32.000  , 32.100  , 32.188  , 32.249  , 32.211  , \
           31.374  , 31.183  , 30.878  , 30.534  , 29.964  , 29.801  , \
           29.939  , 30.672  , 30.735  , 30.278  , 30.152  , 30.017  , \
           29.506  , 29.653  , 29.839  , 29.780  , 29.907  , 29.792  , \
           30.015  , 30.142  , 30.368  , 30.489  , 30.333  , 30.908  , \
           31.133  , 31.012  , 29.942  , 29.676  , 29.159  , 29.111  , \
           28.879  , 29.033  , 28.777  , 28.901  , 28.703  , 28.728  , \
           28.384  , 28.185  , 27.900  , 27.340  , 26.418  , 26.284  , \
           26.440  , 26.036  , 26.409  , 26.668  , 26.656  , 26.480  , \
           26.263  , 26.279  , 26.853  , 27.503  , 27.908  , 26.948  , \
           27.388  , 28.497  , 30.810  , 31.293  , 31.420  , 32.408  , \
           32.737  , 33.381  , 33.956  , 34.550  , 34.822  , 34.616  , \
           34.322  , 34.143  , 34.391  , 34.333  /)
  xpthh=(/ 96.192  , 97.611  , 97.989  , 98.195  , 98.597  , 98.534  , \
           98.714  , 99.263  , 99.278  , 99.520  , 99.967  ,100.367  , \
          100.457  ,100.993  ,101.209  ,101.242  ,101.598  ,101.972  , \
          102.234  ,102.570  ,102.690  ,102.340  ,101.440  ,101.069  , \
          100.546  ,100.343  ,100.513  ,101.067  ,101.554  ,101.958  , \
          102.314  ,103.339  ,103.655  ,104.237  ,104.402  ,104.923  , \
          104.801  ,104.537  ,104.521  ,105.205  ,106.105  ,107.081  , \
          106.919  ,107.477  ,107.962  ,108.639  ,108.982  ,109.412  , \
          110.415  ,111.584  ,111.637  ,111.317  ,111.445  ,111.189  , \
          111.103  ,110.715  ,111.002  ,110.883  ,110.577  ,110.825  , \
          110.476  ,110.455  ,110.621  ,111.772  ,112.152  ,113.002  , \
          113.630  ,114.066  ,114.934  ,115.272  ,116.249  ,117.442  , \
          118.427  ,118.537  ,119.076  /)
  ypthh=(/ 35.183  , 34.880  , 35.169  , 35.151  , 34.875  , 34.642  , \
           34.470  , 34.469  , 34.032  , 33.801  , 33.869  , 33.635  , \
           33.822  , 33.988  , 33.790  , 33.946  , 33.737  , 33.743  , \
           33.426  , 33.464  , 33.601  , 34.027  , 34.364  , 34.781  , \
           34.900  , 35.531  , 35.823  , 36.177  , 36.085  , 36.215  , \
           35.875  , 35.818  , 36.228  , 36.119  , 36.388  , 36.643  , \
           36.886  , 36.951  , 37.215  , 37.521  , 37.658  , 39.092  , \
           40.111  , 40.698  , 40.919  , 40.881  , 40.620  , 40.548  , \
           40.599  , 40.143  , 39.585  , 39.446  , 39.365  , 39.048  , \
           38.586  , 38.247  , 37.720  , 37.348  , 37.070  , 35.677  , \
           35.023  , 34.722  , 34.648  , 34.925  , 35.159  , 34.854  , \
           35.067  , 34.935  , 34.975  , 35.443  , 36.033  , 37.091  , \
           37.441  , 37.655  , 37.876  /)
  nhh = dimsizes(xpthh)
  ncj = dimsizes(xptcj)
  resp                   = True                     ; polyline mods desired
  resp@gsLineLabelString = ""                       ; adds a line label string
  if (opt .and. isatt(opt,"color")) then
     resp@gsLineColor = opt@color
  else
     resp@gsLineColor = "black"   
  end if
  if (opt .and. isatt(opt,"thickness")) then
     resp@gsLineThicknessF = opt@thickness
  else
     resp@gsLineThicknessF = 2              ; twice as thick
  end if
  if (opt .and. isatt(opt,"dashP")) then
     resp@gsLineDashPattern = opt@dashP
  else
     resp@gsLineDashPattern = 0           ; solid line
  end if
  plot@dumhP=gsn_add_polyline(wks,plot,xpthh,ypthh,resp)
  plot@dumcP=gsn_add_polyline(wks,plot,xptcj,yptcj,resp)
end

begin
……
……
do n=0,6
    add_Changjiang_Huanghe(wks,plot(n),opt)
end  do
……
……
end
为什么只在最后一张图上有河流啊?
怎么修改内置函数可以改成plot(n)= add_Changjiang_Huanghe(wks,plot(n),opt)这样写呢?这样写会出错。



密码修改失败请联系微信:mofangbao
发表于 2017-3-13 08:57:50 | 显示全部楼层
在画plot的时候就add
密码修改失败请联系微信:mofangbao
发表于 2017-3-13 09:23:02 | 显示全部楼层
原版本的这个函数用在一页多图里稍微有点缺陷,因为gsn add polyline的返回值是不能被覆盖的,覆盖了就画不出来了。
可以这样改
dumhP=unique_string("dumh")   ;每次都生成一个不一样的字符变量
plot@$dumhP$=gsn_add_polyline()

评分

参与人数 1金钱 +6 贡献 +1 收起 理由
posuidexin + 6 + 1

查看全部评分

密码修改失败请联系微信:mofangbao
 楼主| 发表于 2017-3-13 11:13:18 | 显示全部楼层
井中月 发表于 2017-3-13 09:23
原版本的这个函数用在一页多图里稍微有点缺陷,因为gsn add polyline的返回值是不能被覆盖的,覆盖了就画不 ...

谢谢,困扰了我好几天的东西,终于解决了,太谢谢了!!!
密码修改失败请联系微信:mofangbao
发表于 2017-6-2 16:13:13 | 显示全部楼层
想知道到底怎么用add_Changjiang_Huanghe,能教一下吗
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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