爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 7149|回复: 12

求助 为啥我用nc资料画的grads风场这么密集??

[复制链接]

新浪微博达人勋

发表于 2017-4-30 13:34:07 | 显示全部楼层 |阅读模式
GrADS
系统平台:
问题截图:
问题概况: 1948年至今的uwnd和vwnd 月平均nc资料,共831个月,提取我所需要的39年的冬季资料,做矢量箭头形式的二维风场,出图之后是这个样子的...
我看过提问的智慧: 看过
自己思考时长(天): 2

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

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

x
1948年至今的uwnd和vwnd  月平均nc资料,共831个月,挑选我所需要的不连贯的39年的冬季资料,做平均矢量风场,出图之后是这个样子的...在设置了set strmden 之后也还是这么密集,请问这图对吗?还是我哪里做的有问题?

gs文件:
'reinit'
'sdfopen d:\ziliao\wind\uwnd.mon.mean.nc'
'sdfopen d:\ziliao\wind\vwnd.mon.mean.nc'
'set grid off'
'set grads off'
'set x 1 144'
'set y 1 73'
'set lev 850'
'set gxout vector'
'set strmden 5'
'define a2=ave(uwnd,t=48,t=50)'
'define b2=ave(uwnd,t=60,t=62)'
'define c2=ave(uwnd,t=84,t=86)'
'define d2=ave(uwnd,t=96,t=98)'
'define e2=ave(uwnd,t=168,t=170)'
'define f2=ave(uwnd,t=180,t=182)'
'define g2=ave(uwnd,t=204,t=206)'
'define h2=ave(uwnd,t=216,t=218)'
'define i2=ave(uwnd,t=228,t=230)'
'define j2=ave(uwnd,t=240,t=242)'
'define k2=ave(uwnd,t=264,t=266)'
'define l2=ave(uwnd,t=348,t=350)'
'define m2=ave(uwnd,t=396,t=398)'
'define n2=ave(uwnd,t=420,t=422)'
'define o2=ave(uwnd,t=432,t=434)'
'define p2=ave(uwnd,t=456,t=458)'
'define q2=ave(uwnd,t=564,t=566)'
'define r2=ave(uwnd,t=612,t=614)'
'define s2=ave(uwnd,t=624,t=626)'
'define t2=ave(uwnd,t=672,t=674)'
'define w2=ave(uwnd,t=768,t=770)'
'define a21=ave(uwnd,t=72,t=74)'
'define b21=ave(uwnd,t=192,t=194)'
'define c21=ave(uwnd,t=252,t=254)'
'define d21=ave(uwnd,t=276,t=278)'
'define e21=ave(uwnd,t=288,t=290)'
'define f21=ave(uwnd,t=300,t=302)'
'define g21=ave(uwnd,t=372,t=374)'
'define h21=ave(uwnd,t=492,t=494)'
'define i21=ave(uwnd,t=504,t=506)'
'define j21=ave(uwnd,t=516,t=518)'
'define k21=ave(uwnd,t=528,t=530)'
'define l21=ave(uwnd,t=540,t=542)'
'define m21=ave(uwnd,t=588,t=590)'
'define n21=ave(uwnd,t=600,t=602)'
'define o21=ave(uwnd,t=636,t=638)'
'define p21=ave(uwnd,t=660,t=662)'
'define q21=ave(uwnd,t=708,t=710)'
'define r21=ave(uwnd,t=792,t=794)'
'define u=(a2+b2+c2+d2+e2+f2+g2+h2+i2+j2+k2+l2+m2+n2+o2+p2+q2+r2+s2+t2+w2+a21+b21+c21+d21+e21+f21+g21+h21+i21+j21+k21+l21+m21+n21+o21+p21+q21+r21)/39'
'define a3=ave(vwnd.2,t=48,t=50)'
'define b3=ave(vwnd.2,t=60,t=62)'
'define c3=ave(vwnd.2,t=84,t=86)'
'define d3=ave(vwnd.2,t=96,t=98)'
'define e3=ave(vwnd.2,t=168,t=170)'
'define f3=ave(vwnd.2,t=180,t=182)'
'define g3=ave(vwnd.2,t=204,t=206)'
'define h3=ave(vwnd.2,t=216,t=218)'
'define i3=ave(vwnd.2,t=228,t=230)'
'define j3=ave(vwnd.2,t=240,t=242)'
'define k3=ave(vwnd.2,t=264,t=266)'
'define l3=ave(vwnd.2,t=348,t=350)'
'define m3=ave(vwnd.2,t=396,t=398)'
'define n3=ave(vwnd.2,t=420,t=422)'
'define o3=ave(vwnd.2,t=432,t=434)'
'define p3=ave(vwnd.2,t=456,t=458)'
'define q3=ave(vwnd.2,t=564,t=566)'
'define r3=ave(vwnd.2,t=612,t=614)'
'define s3=ave(vwnd.2,t=624,t=626)'
'define t3=ave(vwnd.2,t=672,t=674)'
'define w3=ave(vwnd.2,t=768,t=770)'
'define a31=ave(vwnd.2,t=72,t=74)'
'define b31=ave(vwnd.2,t=192,t=194)'
'define c31=ave(vwnd.2,t=252,t=254)'
'define d31=ave(vwnd.2,t=276,t=278)'
'define e31=ave(vwnd.2,t=288,t=290)'
'define f31=ave(vwnd.2,t=300,t=302)'
'define g31=ave(vwnd.2,t=372,t=374)'
'define h31=ave(vwnd.2,t=492,t=494)'
'define i31=ave(vwnd.2,t=504,t=506)'
'define j31=ave(vwnd.2,t=516,t=518)'
'define k31=ave(vwnd.2,t=528,t=530)'
'define l31=ave(vwnd.2,t=540,t=542)'
'define m31=ave(vwnd.2,t=588,t=590)'
'define n31=ave(vwnd.2,t=600,t=602)'
'define o31=ave(vwnd.2,t=636,t=638)'
'define p31=ave(vwnd.2,t=660,t=662)'
'define q31=ave(vwnd.2,t=708,t=710)'
'define r31=ave(vwnd.2,t=792,t=794)'
'define v=(a3+b3+c3+d3+e3+f3+g3+h3+i3+j3+k3+l3+m3+n3+o3+p3+q3+r3+s3+t3+w3+a31+b31+c31+d31+e31+f31+g31+h31+i31+j31+k31+l31+m31+n31+o31+p31+q31+r31)/39'
'd u;v'
'draw title EU+EU- 850wnd'
'printim D:\ziliao\hecheng1\EUslp850wnd.png white'
;

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

新浪微博达人勋

发表于 2017-4-30 22:03:02 | 显示全部楼层
请问你画的是流线图吗?不是流线你用控制流线的命令有用吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-5-1 13:24:09 | 显示全部楼层
river 发表于 2017-4-30 22:03
请问你画的是流线图吗?不是流线你用控制流线的命令有用吗

'set gxout vector'
'set strmden 5'
可是书上说strmden可以对图形类型为contour,shaded,vector,stream的起作用啊。。
所以要怎么设置vector类型的风场??
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-5-1 14:11:08 | 显示全部楼层
grads不熟,不过这个密集度应该是可以调整的吧,ncl是可以的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-5-1 21:08:23 | 显示全部楼层
你可以设置一下啊。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-5-2 09:33:20 | 显示全部楼层
有个skip命令可以用 set strmden 我也用过感觉效果不是很明显
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-5-2 10:40:10 | 显示全部楼层
肚娘 发表于 2017-5-1 13:24
'set gxout vector'
'set strmden 5'
可是书上说strmden可以对图形类型为contour,shaded,vector,str ...

set strmden / set strmopts

set strmden density <arrow_spacing> <arrow_size> <arrow_type>

This command controls the appearance of the streamlines, drawn with 'set gxout stream'.

density        an integer between -10 and 10. Negative values are for high-res grids. The default value is 5.
arrow_spacing  a real number > 0.001 that controls the distance (in page inches) between arrows on each streamline
arrow_size     a real number >= 0.0 that controls the size (in page inches) of the arrows. The default value is 0.05.
arrow_type     may be 1 (for open arrow heads, "\/") or 2 (for closed arrow heads, filled triangles). The default value is 1.

Usage Notes

The optional arrow_spacing, arrow_size, and arrow_type options as well as support for negative density values for high-resolution grids were introduced in version 2.0.0.

'set strmopts' is an alias for 'set strmden'.




skip()

skip (expr, skipi, skipj)

Sets alternating values of expr to the missing data value.

expr     A valid grid expression that may have 1 or 2 varying dimensions
skipi    Skip factor in the I dimension of expr
skipj    Skip factor in the J dimension of expr
Usage Notes

This function is often used while displaying wind arrows or barbs to thin the number of arrows or barbs. It is not necessary to use the skip function on both the U and V wind components; it is sufficient to populate only one component with missing data values to suppress the plotting of the wind arrow or barb.
Examples

Suppose you have a time series of 3-hourly data, but you want to display values at 6-hourly time steps:

set x 1
set y 1
set t 1 last
d skip(var,2)

To display every other grid point in both the X and Y direction:

d skip(u,2,2);v

To display every grid point in the Y direction, but every 5th grid point in the X direction:

d skip(u,5,1);v

This example script "d_uv.gs" written by Wesley Ebisuzaki automatically sets the skip factor based on the plot dimensions.
*
* This function does a d skip(ugrd,n);v
* where n is automatically set to an appropriate value
*
* usage: d_uv ugrd vgrd
*
* v1.1 w. ebisuzaki
* v1.2 4/6/98 revised empirical formula for skip
*
function duv(arg)
u = subwrd(arg,1)
v = subwrd(arg,2)

* get lat/lon info
'query dims'
lons = sublin(result,2)
lats = sublin(result,3)
dx = subwrd(lons,13) - subwrd(lons,11)
dy = subwrd(lats,13) - subwrd(lats,11)

* Determine skip factor
dn = dx
if (dy > dx) ; dn = dy ; endif
skip = dn / 50 + 0.5
if (skip < 1) ; skip=1 ; endif

* Display the plot
'd skip('u','skip');'v
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-5-2 15:02:58 | 显示全部楼层
river 发表于 2017-5-2 10:40
set strmden / set strmopts

set strmden density   

哇~谢谢!我试一下~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-5-2 15:05:45 | 显示全部楼层
我不's玩具 发表于 2017-5-2 09:33
有个skip命令可以用 set strmden 我也用过感觉效果不是很明显

对,我觉得strmden效果太不明显了,回头试试skip,,请问哪里有skip的使用说明?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-5-2 15:20:53 | 显示全部楼层
肚娘 发表于 2017-5-2 15:05
对,我觉得strmden效果太不明显了,回头试试skip,,请问哪里有skip的使用说明?

skip(expr,skipx,skipy)
expr为变量名
skipx,skipy分别为x,y方向上隔几个格点取一次值
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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