[ncl-talk] Masking

Mary Haley haley at ucar.edu
Tue Nov 7 09:42:12 MST 2017


Muhammad,

It looks like you are trying to use a rectilinear lat/lon grid for masking
rather than the original lat/lon data associated with your "T2" variable.

If your file is indeed a WRF output file, then you should use the
XLAT/XLONG variables on the file, rather than trying to create your own
lat/lon arrays.

Your code would look something like this:

 nt = 0
 data
​      ​
= wrf_user_getvar(a, "T2",
​ ​
nt)
 data at lat2d = wrf_user_getvar(a, "lat", nt)
 data at lon2d = wrf_user_getvar(a,
​ ​
"lon",
​ ​
nt)
 data at _FillValue = -9999

 opt       = True
 opt at debug = True
 data_mask = shapefile_mask_data(data,"Shapefile/malay.shp",opt)


For an example that masks a WRF output file, see example
shapefile_14_mask.ncl
​ ​
at:

http://www.ncl.ucar.edu/Applications/shapefiles.shtml#ex14

Note that this example is specifying "Ohio" as the specific area in the
shapefile to mask against, but if you simply want to use the whole
shapefile, then you do not need to set "shape_var" or "shape_names" as this
script is doing.

--Mary

On Tue, Nov 7, 2017 at 6:48 AM, Muhammad Omer Mughal <
m.mughal1 at postgrad.curtin.edu.au> wrote:

> Hi
>
> I am using a WRF output file and I did the following changes "ONLY" to the
> code[ https://www.ncl.ucar.edu/Applications/Scripts/mask_9.ncl] . I want
> to  mask the temperature in Malaysia using the shape file malay.shp. Can
> you kindly tell me what else do  I need to change as currently I am not
> able to see the data masked within Malaysia. I will be grateful for your
> help
>
>
> load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
>
> begin
>   MASK_INSIDE = True
>
>   a = addfile("./UTC_0.nc","r")
>    lat=a->XLAT
>    lon=a->XLONG
>
>   minlat=min(lat)
>   maxlat=max(lat)
>   minlon=min(lon)
>   maxlon=max(lon)
>
>  nlat=129
>  nlon=210
>
>   lat1d       = fspan(minlat,maxlat,nlat)
>   lon1d       = fspan(minlon,maxlon,nlon)
>
>  data = wrf_user_getvar(a, "T2", 0)
>  data at _FillValue = -9999
>
>
>
>   lat1d       = fspan(minlat,maxlat,nlat)
>   lon1d       = fspan(minlon,maxlon,nlon)
>   lat1d at units = "degrees_north"
>   lon1d at units = "degrees_east"
>
> ;---Attach lat/lon coordinate array information.
>   data!0      = "lat"
>   data!1      = "lon"
>   data&lat    = lat1d
>   data&lon    = lon1d
>
>
>
>   f       = addfile("Shapefile/malay.shp", "r")
>   mrb_lon = f->x
>   mrb_lat = f->y
>   nmrb    = dimsizes(mrb_lon)
>
>   min_mrb_lat = min(mrb_lat)
>   max_mrb_lat = max(mrb_lat)
>   min_mrb_lon = min(mrb_lon)
>   max_mrb_lon = max(mrb_lon)
>
>
> www.ncl.ucar.edu
> <https://www.ncl.ucar.edu/Applications/Scripts/mask_9.ncl>
> www.ncl.ucar.edu
> ;***** ; mask_9.ncl ; ; Concepts illustrated: ; - Drawing the Mississippi
> River Basin using data from a shapefile ; - Masking a data array based on a
> geographical ...
>
>
> www.ncl.ucar.edu
> <https://www.ncl.ucar.edu/Applications/Scripts/mask_9.ncl>
> www.ncl.ucar.edu
> ;***** ; mask_9.ncl ; ; Concepts illustrated: ; - Drawing the Mississippi
> River Basin using data from a shapefile ; - Masking a data array based on a
> geographical ...
>
>
>
> Muhammad Omer Mughal
> MSc BSc Mechanical Engineering
> PhD  Research Scholar
> Remote Sensing and Satellite Research Group
> Department of Imaging and Applied Physics
> Curtin University
>
> Curtin University
> Tel | +61 8 9266 7962
> Fax | +61 8 9266 2377
> Mobile | 0470 237 525
>
> Email | m.mughal1 at postgrad.curtin.edu.au <m.lynch at curtin.edu.au>
> Web | http://curtin.edu.au
>
> Curtin University is a trademark of Curtin University of Technology.
> CRICOS Provider Code 00301J (WA), 02637B (NSW)
>
>
>
> _______________________________________________
> ncl-talk mailing list
> ncl-talk at ucar.edu
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20171107/ae095944/attachment.html>


More information about the ncl-talk mailing list