爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 23419|回复: 17

[作图] NCL画图背景如何改为透明,页边距如何更改

[复制链接]
发表于 2014-10-17 13:06:31 | 显示全部楼层 |阅读模式

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

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

x
大神们好,求教如下:

NCL版本从5.0.2更新最新的6以后,发现同一程序运行画出来的图有变化:
1、本来图背景是透明的,却变成了白色背景,想把背景重新改成透明的,尝试了用res@wkBackgroundOpacityF=0.0 ,企图把背景重新改成完全透明的,却发现NCL不认这个语句??为啥呢
2、本来画的图是多大出来的图就多大的,升级NCL版本后,画出来的图是固定大小的一张纸,画图区域只在上面一部分,页边有很多空白?想把空白部分去掉,让整张图的大小只有画图区域那么大,请问用什么语句呢?vpWidthF 和vpHeightF只能调节画图的大小,vpXF和vpYF只能调节画图的位置,都不能改变整张纸的大小瓦?

求赐教
密码修改失败请联系微信:mofangbao
发表于 2014-10-17 15:15:14 | 显示全部楼层
1. 估计wkBackgroundOpacityF用错地方了。要在gsn_open_wks时使用。
   wks = "newpdf"
   wks@wkBackgroundOpacityF = .0
   wks = gsn_open_wks(wks,"Opacity")
2. 用wkPaper*调整
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2014-10-18 00:18:39 | 显示全部楼层
longlivehj 发表于 2014-10-17 15:15
1. 估计wkBackgroundOpacityF用错地方了。要在gsn_open_wks时使用。
   wks = "newpdf"
   wks@wkBackgro ...

太赞了 斑竹万能 到单位试一下再来反馈
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-10-21 10:00:08 | 显示全部楼层
longlivehj 发表于 2014-10-17 15:15
1. 估计wkBackgroundOpacityF用错地方了。要在gsn_open_wks时使用。
   wks = "newpdf"
   wks@wkBackgro ...

按照斑竹的方法,第一个问题顺利解决,果然是我看BackgroundOpacityF 用错地方,这个要用来设置画图空间,而不是resource.
但是第二个wkPaperHeightF=11和 wkPaperWidthF=8.5等语句,放在wks@wkPaper*  和res@wkPaper*  后面来描述属性,都分别显示错误is not a valid resource in the given object 和 is not a valid resource in *_xy at this time,请问是我用的地方不对吗?
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-10-21 10:05:26 | 显示全部楼层
longlivehj 发表于 2014-10-17 15:15
1. 估计wkBackgroundOpacityF用错地方了。要在gsn_open_wks时使用。
   wks = "newpdf"
   wks@wkBackgro ...

斑竹,我是用了
res@vpWidthF=0.6
res@vpHeightF=0.4
res@vpXF=0.2
res@vpYF=0.8
来设置所画图形的大小和位置的.
现在是发现所画图形在图纸上离外边界距离不合适,想把最外面的画幅(专业名字叫什么我不知道。。。)调整成跟图形大小差不多大。
用wkPaper*吗,放在什么位置呢?
密码修改失败请联系微信:mofangbao
发表于 2014-10-21 10:10:19 | 显示全部楼层
chennizi 发表于 2014-10-21 10:05
斑竹,我是用了
res@vpWidthF=0.6
res@vpHeightF=0.4

wkBackgroundOpacityF和wkPaper*都以wk开头,均为设置workstation的属性,放的地方自然也是相同的。
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-10-21 10:31:12 | 显示全部楼层
longlivehj 发表于 2014-10-21 10:10
wkBackgroundOpacityF和wkPaper*都以wk开头,均为设置workstation的属性,放的地方自然也是相同的。

我是放在相同地方试过了,代码如下:
xwks="png"
xwks@wkBackgroundOpacityF =.0
xwks@wkPaperHeightF=8
xwks@wkPaperHeightF=6
wks = gsn_open_wks(xwks,"EC")
res=True
.....
报错wkPaperHeightF is not a resource in the given object
为什么捏?
密码修改失败请联系微信:mofangbao
发表于 2014-10-21 10:44:34 | 显示全部楼层
chennizi 发表于 2014-10-21 10:31
我是放在相同地方试过了,代码如下:
xwks="png"
xwks@wkBackgroundOpacityF =.0

workstation有好多种,png的话,要用wkHeight和wkWidth。
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-10-21 10:46:35 | 显示全部楼层
longlivehj 发表于 2014-10-21 10:44
workstation有好多种,png的话,要用wkHeight和wkWidth。

嗷嗷嗷原来如此,那eps 用什么呀 ,eps跟ps一样吗
密码修改失败请联系微信:mofangbao
发表于 2014-10-21 10:49:41 | 显示全部楼层
chennizi 发表于 2014-10-21 10:46
嗷嗷嗷原来如此,那eps 用什么呀 ,eps跟ps一样吗

ps可以用wkPaper*,eps也是。
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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