- 积分
- 11831
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2013-4-26
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
是这样的,我用ncl绘制站点数据图,我想让小于0的数据和大于0的数字在图上分别显示不同的颜色,但是不知道如何操作。才学NCL一段时间,希望有大神能帮我看看这个怎么可以解决。一下是我的编码和例图:
load "$WORKDIR/include/library.ncl"
begin
inputfileName = getArgsPara(params,"inputfileName")
;*************************************读取数据****************************
stationfile = inputfileName
ncol = numAsciiCol(stationfile)
data1 = readAsciiTable(stationfile,ncol,"float",0)
nrows = dimsizes(data1(:,0)) ; calculate # of rows
data = asciiread(stationfile,-1,"float")
stationdata = onedtond(data,(/nrows,ncol/))
temp = stationdata(:,3) ; station numbers to appear on the map
lon = stationdata(:,1) ; longitude values
lat = stationdata(:,2) ; latitude values
;
wks = gsn_open_wks("png", "station") ; send graphics to PNG file
res = True
res@gsnMaximize = True
res@gsnDraw = False
res@gsnFrame = False
res@mpProjection = "Mercator" ; Change Map projection
res@mpDataBaseVersion = "MediumRes" ; Medium resolution
res@mpLimitMode = "LatLon" ; Limit the map area by latitude/longitude.
res@mpMinLonF = 70.00
res@mpMaxLonF = 140.00
res@mpMinLatF = 15.00
res@mpMaxLatF = 65.00
res@pmTickMarkDisplayMode = "Always"
res@mpPerimOn = False
res@mpOutlineOn = True
res@mpOutlineBoundarySets = "Geophysical"
res@mpDataSetName = "Earth..4"
res@mpGeophysicalLineThicknessF = 1.0
res@mpNationalLineThicknessF = 0.5
res@mpLandFillColor = "white"
res@mpGridAndLimbOn = False
res@mpOutlineDrawOrder = "PostDraw"
res@tiMainString = "Overlapping text strings"
map = gsn_csm_map(wks,res)
txres = True
txres@txFontHeightF = 0.007
txres@txFont = "helvetica-bold"
text = gsn_add_text(wks,map,sprintf("%6.4g",temp),lon,lat,txres)
nstrs = dimsizes(text)
draw(map) ; Now draw map with text strings and
frame(wks) ; advance the frame
end
|
|