<div dir="ltr"><div class="gmail_default" style="font-size:small">As I mentioned in my previous message, the wmbarb/wmbarbmap routines are pretty primitive. They cannot be attached to plots like text, markers, lines, and polygons can.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Instead of using gsn_panel, you need to set vpXF, vpYF, vpWidthF and vpHeightF for each plot yourself, so you can control where it gets drawn on the page. You must draw the wind barbs for the current plot before you draw the next plot.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">You can use your current gsn_panel code to help you determine the values of these resources, by setting the special gsnPanelDebug resource to True.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">See example panel_39.ncl at:</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default"><a href="http://www.ncl.ucar.edu/Applications/panel.shtml#ex39">http://www.ncl.ucar.edu/Applications/panel.shtml#ex39</a><br></div><div class="gmail_default"><br></div><div class="gmail_default">You may also want to see example weather_sym_5.ncl at:</div><div class="gmail_default"><br></div><div class="gmail_default"><a href="http://www.ncl.ucar.edu/Applications/weather_sym.shtml">http://www.ncl.ucar.edu/Applications/weather_sym.shtml</a><br></div><div class="gmail_default"><br></div><div class="gmail_default">which is drawing wind barbs on paneled plots.</div><div class="gmail_default"><br></div><div class="gmail_default">Good luck,</div><div class="gmail_default"><br></div><div class="gmail_default">--Mary</div><div class="gmail_default"><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Nov 6, 2016 at 5:33 AM, <a href="mailto:dyjbean@gmail.com">dyjbean@gmail.com</a> <span dir="ltr">&lt;<a href="mailto:dyjbean@gmail.com" target="_blank">dyjbean@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
<div><span></span>hi.</div><div>   when i want to plot station wind barb with gsn_panel style, i found it  difficult to overlay wmvectmap on individual figure with panel,</div><div>i have tried some methods , such as put the wmvectmap front or behind the gsn_panel or every independent subplot, but they didn&#39;t work.</div><div><br></div><div>the following is my script,</div><div>++++++++++++++++++++++++++++++<wbr>++++++++++++++++++++++++++++++<wbr>+++++++++++++++</div><div><span style="color:rgb(0,0,0);background-color:rgba(0,0,0,0)">load &quot;$NCARG_ROOT/lib/ncarg/<wbr>nclscripts/csm/gsn_code.ncl&quot;<br>load &quot;$NCARG_ROOT/lib/ncarg/<wbr>nclscripts/csm/gsn_csm.ncl&quot;<br>load &quot;$NCARG_ROOT/lib/ncarg/<wbr>nclscripts/csm/contributed.<wbr>ncl&quot;<br>load &quot;$NCARG_ROOT/lib/ncarg/<wbr>nclscripts/csm/shea_util.ncl&quot;<br>load &quot;./shapefile_mask_data.<wbr>ncl&quot;<br>;load &quot;$GEODIAG_ROOT/geodiag.<wbr>ncl&quot;<br><br>begin<br>shp_fname=&quot;jjj.shp&quot;<br>create_mask=True<br><br>minlon = 113.40<br>maxlon = 119.90<br>minlat = 36.00<br>maxlat = 42.70<br><br>add_latlon_points        = <wbr>False<br>add_shapefile_outlines  = True<br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;;;;;<br>;; uv data<br>bj_csvs1=systemfunc(&quot;ls <wbr>uvdata/112920_inside_<wbr>jingjinji_obs.csv&quot;)<br><br>lines1=asciiread(bj_csvs1,-1,&quot;<wbr>string&quot;)<br>nlines1=dimsizes(lines1) - 1<br><br>delim1=&quot;,&quot;<br>field_names1=str_split(lines1(<wbr>0),delim1)<br>nfields1=dimsizes(field_<wbr>names1)<br><br>;<br>fields1=new((/nfields1,<wbr>nlines1/),string)<br>do nf=0,nfields1-1<br>  fields1(nf,:)=str_get_field(<wbr>lines1(1:),nf+1,delim1)<br>end do<br><br>;print(fields(1,:) + &quot;   &quot;+<wbr>fields(2,:) + &quot;   &quot;+tofloat(<wbr>fields(3,:))*2.5+&quot;   &quot;+<wbr>tofloat(fields(4,:))*2.5)<br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;<br>bj_csvs2=systemfunc(&quot;ls <wbr>uvdata/113008_inside_<wbr>jingjinji_obs.csv&quot;)<br><br>lines2=asciiread(bj_csvs2,-1,&quot;<wbr>string&quot;)<br>nlines2=dimsizes(lines2) - 1<br><br>delim2=&quot;,&quot;<br>field_names2=str_split(lines2(<wbr>0),delim2)<br>nfields2=dimsizes(field_<wbr>names2)<br><br>;<br>fields2=new((/nfields2,<wbr>nlines2/),string)<br>do nf=0,nfields2-1<br>  fields2(nf,:)=str_get_field(<wbr>lines2(1:),nf+1,delim2)<br>end do<br><br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;<br>bj_csvs3=systemfunc(&quot;ls <wbr>uvdata/113014_inside_<wbr>jingjinji_obs.csv&quot;)<br><br>lines3=asciiread(bj_csvs3,-1,&quot;<wbr>string&quot;)<br>nlines3=dimsizes(lines3) - 1<br><br>delim3=&quot;,&quot;<br>field_names3=str_split(lines3(<wbr>0),delim3)<br>nfields3=dimsizes(field_<wbr>names3)<br><br>;<br>fields3=new((/nfields3,<wbr>nlines3/),string)<br>do nf=0,nfields3-1<br>  fields3(nf,:)=str_get_field(<wbr>lines3(1:),nf+1,delim3)<br>end do<br><br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;<br>bj_csvs4=systemfunc(&quot;ls <wbr>uvdata/113020_inside_<wbr>jingjinji_obs.csv&quot;)<br><br>lines4=asciiread(bj_csvs4,-1,&quot;<wbr>string&quot;)<br>nlines4=dimsizes(lines4) - 1<br><br>delim4=&quot;,&quot;<br>field_names4=str_split(lines4(<wbr>0),delim4)<br>nfields4=dimsizes(field_<wbr>names4)<br><br>;<br>fields4=new((/nfields4,<wbr>nlines4/),string)<br>do nf=0,nfields4-1<br>  fields4(nf,:)=str_get_field(<wbr>lines4(1:),nf+1,delim4)<br>end do<br><br><br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;;;<br>;; pm2.5 data<br><br>  ncol = 3                    <wbr>            ; number of <wbr>columns is 3£»ÄãµÄÁÐÊý<br>  stationdata1= <wbr>readAsciiTable(&quot;pm2.5_txt/<wbr>15112920.txt&quot;, ncol, &quot;float&quot;, <wbr>1)<br>  stationdata2= <wbr>readAsciiTable(&quot;pm2.5_txt/<wbr>15113008.txt&quot;, ncol, &quot;float&quot;, <wbr>1)<br>  stationdata3= <wbr>readAsciiTable(&quot;pm2.5_txt/<wbr>15113014.txt&quot;, ncol, &quot;float&quot;, <wbr>1)<br>  stationdata4= <wbr>readAsciiTable(&quot;pm2.5_txt/<wbr>15113020.txt&quot;, ncol, &quot;float&quot;, <wbr>1)<br><br>  ; print(dimsizes(<wbr>stationdata1))<br>  nps1  =dimsizes(<wbr>stationdata1)<br>  npts1 = nps1(0)            ;<wbr> Number of points.<br><br>  nps2  =dimsizes(<wbr>stationdata2)<br>  npts2 = nps2(0)            ;<wbr> Number of points.<br><br>  nps3  =dimsizes(<wbr>stationdata3)<br>  npts3 = nps3(0)            ;<wbr> Number of points.<br><br>  nps4  =dimsizes(<wbr>stationdata4)<br>  npts4 = nps4(0)            ;<wbr> Number of points.<br><br>  lat1 = stationdata1(:,1)    <wbr> ; latitude values<br>  lon1 = stationdata1(:,0)    <wbr> ; longitude values<br>  pm251= stationdata1(:,2)   ;<wbr> station numbers to appear on <wbr>the map£»Õâ¸öµØ·½Äã¿ÉÒÔдÎÛȾ<wbr>Êý¾Ý<br><br>  lat2 = stationdata2(:,1)    <wbr> ; latitude values<br>  lon2 = stationdata2(:,0)    <wbr> ; longitude values<br>  pm252= stationdata2(:,2)   ;<wbr> station numbers to appear on <wbr>the map£»Õâ¸öµØ·½Äã¿ÉÒÔдÎÛȾ<wbr>Êý¾Ý<br><br>  lat3 = stationdata3(:,1)    <wbr> ; latitude values<br>  lon3 = stationdata3(:,0)    <wbr> ; longitude values<br>  pm253= stationdata3(:,2)   ;<wbr> station numbers to appear on <wbr>the map£»Õâ¸öµØ·½Äã¿ÉÒÔдÎÛȾ<wbr>Êý¾Ý<br><br>  lat4 = stationdata4(:,1)    <wbr> ; latitude values<br>  lon4 = stationdata4(:,0)    <wbr> ; longitude values<br>  pm254= stationdata4(:,2)   ;<wbr> station numbers to appear on <wbr>the map£»Õâ¸öµØ·½Äã¿ÉÒÔдÎÛȾ<wbr>Êý¾Ý<br><br>  ; printMinMax(pm251,0)<br>;-------interpolate-----------<wbr>------------------------------<wbr>------------<br>  olon1 =new(80,&quot;float&quot;)<br>  olat1 =new(80,&quot;float&quot;)<br>  data1=new((/80,80/),&quot;float&quot;)<br>  do j=0,79<br>    olon1(j)=113+j*0.1<br>  end do<br>  do k=0,79<br>    olat1(k)=36+k*0.1<br>  end do<br>   <br>  olon2 =new(80,&quot;float&quot;)<br>  olat2 =new(80,&quot;float&quot;)<br>  data2=new((/80,80/),&quot;float&quot;)<br>  do j=0,79<br>    olon2(j)=113+j*0.1<br>  end do<br>  do k=0,79<br>    olat2(k)=36+k*0.1<br>  end do<br><br>  olon3 =new(80,&quot;float&quot;)<br>  olat3 =new(80,&quot;float&quot;)<br>  data3=new((/80,80/),&quot;float&quot;)<br>  do j=0,79<br>    olon3(j)=113+j*0.1<br>  end do<br>  do k=0,79<br>    olat3(k)=36+k*0.1<br>  end do<br><br>  olon4 =new(80,&quot;float&quot;)<br>  olat4 =new(80,&quot;float&quot;)<br>  data4=new((/80,80/),&quot;float&quot;)<br>  do j=0,79<br>    olon4(j)=113+j*0.1<br>  end do<br>  do k=0,79<br>    olat4(k)=36+k*0.1<br>  end do<br><br>;---------set interpolate res-<wbr>------------------------------<wbr>-------------<br>  olon1!0        =&quot;lon&quot;<br>  olon1@long_name=&quot;lontitude&quot;<br>  olon1@units    =&quot;degrees-<wbr>east&quot;<br>  olon1&amp;lon      =olon1<br><br>  olat1!0        =&quot;lat&quot;<br>  olat1@long_name=&quot;latitude&quot;<br>  olat1@units    =&quot;degrees-<wbr>north&quot;<br>  olat1&amp;lat      =olat1<br><br>  olon2!0        =&quot;lon&quot;<br>  olon2@long_name=&quot;lontitude&quot;<br>  olon2@units    =&quot;degrees-<wbr>east&quot;<br>  olon2&amp;lon      =olon2<br><br>  olat2!0        =&quot;lat&quot;<br>  olat2@long_name=&quot;latitude&quot;<br>  olat2@units    =&quot;degrees-<wbr>north&quot;<br>  olat2&amp;lat      =olat2<br><br><br>  olon3!0        =&quot;lon&quot;<br>  olon3@long_name=&quot;lontitude&quot;<br>  olon3@units    =&quot;degrees-<wbr>east&quot;<br>  olon3&amp;lon      =olon3<br><br>  olat3!0        =&quot;lat&quot;<br>  olat3@long_name=&quot;latitude&quot;<br>  olat3@units    =&quot;degrees-<wbr>north&quot;<br>  olat3&amp;lat      =olat3<br><br>  olon4!0        =&quot;lon&quot;<br>  olon4@long_name=&quot;lontitude&quot;<br>  olon4@units    =&quot;degrees-<wbr>east&quot;<br>  olon4&amp;lon      =olon4<br><br>  olat4!0        =&quot;lat&quot;<br>  olat4@long_name=&quot;latitude&quot;<br>  olat4@units    =&quot;degrees-<wbr>north&quot;<br>  olat4&amp;lat      =olat4<br><br>;--------Call interpolation <wbr>function----------------------<wbr>----------------<br>  ;pm25@_FillValue=999999.<wbr>000000<br>  rscan=(/10,5,3,2,1,0.5,0.2,<wbr>0.1/)<br>  data1=obj_anal_ic_<wbr>deprecated(lon1, lat1, pm251, <wbr>olon1, olat1, rscan, False);<wbr>creanm<br>  data2=obj_anal_ic_<wbr>deprecated(lon2, lat2, pm252, <wbr>olon2, olat2, rscan, False);<wbr>creanm<br>  data3=obj_anal_ic_<wbr>deprecated(lon3, lat3, pm253, <wbr>olon3, olat3, rscan, False);<wbr>creanm<br>  data4=obj_anal_ic_<wbr>deprecated(lon4, lat4, pm254, <wbr>olon4, olat4, rscan, False);<wbr>creanm<br>  printMinMax(data1 ,0)<br>  data1!0=&quot;lat&quot;<br>  data1!1=&quot;lon&quot;<br>  data1&amp;lat=olat1<br>  data1&amp;lon=olon1<br>  data1@units=&quot;&quot;<br>  data1@long_name=&quot;pm2.5&quot;<br>  ;data1@_FillValue = pm25@_<wbr>FillValue<br>  printMinMax(olat1,0)<br>  printMinMax(olon1, 0)<br><br>  data2!0=&quot;lat&quot;<br>  data2!1=&quot;lon&quot;<br>  data2&amp;lat=olat2<br>  data2&amp;lon=olon2<br>  data2@units=&quot;&quot;<br>  data2@long_name=&quot;pm2.5&quot;<br>  ;data1@_FillValue = pm25@_<wbr>FillValue<br>  printMinMax(olat2,0)<br>  printMinMax(olon2, 0)<br><br>  data3!0=&quot;lat&quot;<br>  data3!1=&quot;lon&quot;<br>  data3&amp;lat=olat3<br>  data3&amp;lon=olon3<br>  data3@units=&quot;&quot;<br>  data3@long_name=&quot;pm2.5&quot;<br>  ;data1@_FillValue = pm25@_<wbr>FillValue<br>  printMinMax(olat3,0)<br>  printMinMax(olon3, 0)<br><br>  data4!0=&quot;lat&quot;<br>  data4!1=&quot;lon&quot;<br>  data4&amp;lat=olat4<br>  data4&amp;lon=olon4<br>  data4@units=&quot;&quot;<br>  data4@long_name=&quot;pm2.5&quot;<br>  ;data1@_FillValue = pm25@_<wbr>FillValue<br>  printMinMax(olat4,0)<br>  printMinMax(olon4, 0)<br><br><br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;<br>mask_fname1=&quot;<a href="http://15112920_mask.nc" target="_blank">15112920_mask.nc</a>&quot;<br>if(create_mask) then<br>    print(&quot;create the mask <wbr>file:  &quot;)<br><br>;---Create a new mask using a <wbr>shapefile of Henan<br>     udims1 = dimsizes(data1) <br>     opt1             = True<br>     opt1@return_mask = True<br>;    opt1@debug       = True<br>     opt1@minlon      = <wbr>minlon     ; Makes the <wbr>shapefile masking<br>     opt1@maxlon      = <wbr>maxlon     ; go faster.<br>     opt1@minlat      = minlat<br>     opt1@maxlat      = maxlat<br>     jjj_mask1        = <wbr>shapefile_mask_data(data1({<wbr>minlat:maxlat},{minlon:maxlon}<wbr>),shp_fname,opt1)<br><br>;---Write new mask to file<br>     system(&quot;rm -f &quot; + mask_<wbr>fname1)<br>     fout1           = <wbr>addfile(mask_fname1,&quot;c&quot;)<br>     fout1-&gt;jjj_mask1  = jjj_<wbr>mask1 <br>   else<br>     print(&quot;Reading mask off <wbr>file.&quot;)<br><br>;---Read the new mask from <wbr>the NetCDF file <br>     fmask1    = addfile(mask_<wbr>fname1,&quot;r&quot;)<br>     jjj_mask1  = fmask-&gt;jjj_<wbr>mask1  <br>  end if <br><br>   umask_data1 = where(jjj_<wbr>mask1.eq.1,data1({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>data1@_FillValue)<br>   copy_VarMeta(data1({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>umask_data1)<br>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;<br><br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;<br>mask_fname2=&quot;<a href="http://15113008_mask.nc" target="_blank">15113008_mask.nc</a>&quot;<br>if(create_mask) then<br>    print(&quot;create the mask <wbr>file:  &quot;)<br><br>;---Create a new mask using a <wbr>shapefile of Henan<br>     udims2 = dimsizes(data2) <br>     opt2             = True<br>     opt2@return_mask = True<br>;    opt2@debug       = True<br>     opt2@minlon      = <wbr>minlon     ; Makes the <wbr>shapefile masking<br>     opt2@maxlon      = <wbr>maxlon     ; go faster.<br>     opt2@minlat      = minlat<br>     opt2@maxlat      = maxlat<br>     jjj_mask2        = <wbr>shapefile_mask_data(data2({<wbr>minlat:maxlat},{minlon:maxlon}<wbr>),shp_fname,opt2)<br><br>;---Write new mask to file<br>     system(&quot;rm -f &quot; + mask_<wbr>fname2)<br>     fout2           = <wbr>addfile(mask_fname2,&quot;c&quot;)<br>     fout2-&gt;jjj_mask2  = jjj_<wbr>mask2<br>   else<br>     print(&quot;Reading mask off <wbr>file.&quot;)<br><br>;---Read the new mask from <wbr>the NetCDF file <br>     fmask2    = addfile(mask_<wbr>fname2,&quot;r&quot;)<br>     jjj_mask2  = fmask2-&gt;jjj_<wbr>mask2  <br>  end if <br><br>   umask_data2 = where(jjj_<wbr>mask2.eq.1,data2({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>data2@_FillValue)<br>   copy_VarMeta(data2({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>umask_data2)<br>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;<br><br>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;<br>mask_fname3=&quot;<a href="http://15113014_mask.nc" target="_blank">15113014_mask.nc</a>&quot;<br>if(create_mask) then<br>    print(&quot;create the mask <wbr>file:  &quot;)<br><br>;---Create a new mask using a <wbr>shapefile of Henan<br>     udims3 = dimsizes(data3) <br>     opt3             = True<br>     opt3@return_mask = True<br>;    opt3@debug       = True<br>     opt3@minlon      = <wbr>minlon     ; Makes the <wbr>shapefile masking<br>     opt3@maxlon      = <wbr>maxlon     ; go faster.<br>     opt3@minlat      = minlat<br>     opt3@maxlat      = maxlat<br>     jjj_mask3        = <wbr>shapefile_mask_data(data3({<wbr>minlat:maxlat},{minlon:maxlon}<wbr>),shp_fname,opt3)<br><br>;---Write new mask to file<br>     system(&quot;rm -f &quot; + mask_<wbr>fname3)<br>     fout3           = <wbr>addfile(mask_fname3,&quot;c&quot;)<br>     fout3-&gt;jjj_mask3  = jjj_<wbr>mask3 <br>   else<br>     print(&quot;Reading mask off <wbr>file.&quot;)<br><br>;---Read the new mask from <wbr>the NetCDF file <br>     fmask3    = addfile(mask_<wbr>fname3,&quot;r&quot;)<br>     jjj_mask3  = fmask3-&gt;jjj_<wbr>mask3  <br>  end if <br><br>   umask_data3 = where(jjj_<wbr>mask3.eq.1,data3({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>data3@_FillValue)<br>   copy_VarMeta(data3({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>umask_data3)<br>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;<br><br>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;<br>mask_fname4=&quot;<a href="http://15113020_mask.nc" target="_blank">15113020_mask.nc</a>&quot;<br>if(create_mask) then<br>    print(&quot;create the mask <wbr>file:  &quot;)<br><br>;---Create a new mask using a <wbr>shapefile of Henan<br>     udims4 = dimsizes(data4) <br>     opt4             = True<br>     opt4@return_mask = True<br>;    opt4@debug       = True<br>     opt4@minlon      = <wbr>minlon     ; Makes the <wbr>shapefile masking<br>     opt4@maxlon      = <wbr>maxlon     ; go faster.<br>     opt4@minlat      = minlat<br>     opt4@maxlat      = maxlat<br>     jjj_mask4        = <wbr>shapefile_mask_data(data4({<wbr>minlat:maxlat},{minlon:maxlon}<wbr>),shp_fname,opt4)<br><br>;---Write new mask to file<br>     system(&quot;rm -f &quot; + mask_<wbr>fname4)<br>     fout4           = <wbr>addfile(mask_fname4,&quot;c&quot;)<br>     fout4-&gt;jjj_mask4  = jjj_<wbr>mask4 <br>   else<br>     print(&quot;Reading mask off <wbr>file.&quot;)<br><br>;---Read the new mask from <wbr>the NetCDF file <br>     fmask4    = addfile(mask_<wbr>fname4,&quot;r&quot;)<br>     jjj_mask4  = fmask4-&gt;jjj_<wbr>mask4  <br>  end if <br><br>   umask_data4 = where(jjj_<wbr>mask4.eq.1,data4({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>data4@_FillValue)<br>   copy_VarMeta(data4({minlat:<wbr>maxlat},{minlon:maxlon}),<wbr>umask_data4)<br>  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;<wbr>;;;;;;;;;;;;;;<br><br>;; plot<br>  type=&quot;png&quot;<br>  wks = gsn_open_wks(type,&quot;<wbr>2015112920-113020_jjj&quot;)     ; <wbr>Open a workstation and<br>  colors=(/&quot;White&quot;,&quot;Black&quot;,&quot;(/<wbr>.027,.729,.145/)&quot;,&quot;(/.431,.<wbr>824,.035/)&quot;,\<br>          &quot;(/.800,.937,.012/)&quot;<wbr>,&quot;(/1.00,.969,0.00/)&quot;,&quot;(/1.00,<wbr>.871,0.00/)&quot;,\<br>          &quot;(/1.00,.710,0.00/)&quot;<wbr>,&quot;(/1.00,.549,0.00/)&quot;,&quot;(/0.00,<wbr>.757,1.00/)&quot;,\<br>          &quot;(/0.00,0.455,1.00/)<wbr>&quot;,&quot;(/0.00,.122,1.00/)&quot;,&quot;(/1.<wbr>00,.275,0.00/)&quot;,\<br>          &quot;(/1.00,0.059,0.00/)<wbr>&quot;/)  <br>  gsn_define_colormap(wks,<wbr>colors)<br><br>   res                       =<wbr> True     ; plot mods desired<br>   res@gsnMaximize           =<wbr> True    <br>   res@gsnDraw               =<wbr> False<br>   res@gsnFrame              =<wbr> False<br><br>   res@mpOutlineOn           =<wbr> False<br>   res@cnFillOn              =<wbr> True     ; turn on color fill<br>   res@cnLinesOn             =<wbr> False    ; turn off contour <wbr>lines<br>   res@cnLineLabelsOn        =<wbr> False    ; turn off contour <wbr>line labels<br>   ;res@lbLabelBarOn          <wbr>= False    ; will turn on in <wbr>panel<br>   res@gsnAddCyclic          =<wbr> False    ; data already has <wbr>cyclic point<br>   res@mpFillColors          =<wbr> (/-1,0,-1,-1/)  ; background <wbr>color is white<br><br>   res@mpDataBaseVersion     =<wbr> &quot;MediumRes&quot;<br>   res@mpMinLonF             =<wbr> minlon<br>   res@mpMaxLonF             =<wbr> maxlon<br>   res@mpMinLatF             =<wbr> minlat<br>   res@mpMaxLatF             =<wbr> maxlat<br>   res@mpCenterLonF          =<wbr> (minlon+maxlon)/2.<br><br>   res1 =  True<br>   res1 =  res<br>   res1@tmXBMode = &quot;Explicit&quot;<br>   res1@tmXBValues =(/113.40,<wbr>114.7,116.0,117.3,118.6,119.9/<wbr>)<br>   res1@tmXBLabels =(/&quot;113.40&quot;<wbr>,&quot;114.7&quot;,&quot;116.0&quot;,&quot;117.3&quot;,&quot;118.<wbr>6&quot;,&quot;119.9&quot;/)<br><br>   res1@tmYLMode = &quot;Explicit&quot;<br>   res1@tmYLValues =(/36.00,<wbr>37.1,38.2,39.3,40.3,41.4,42.<wbr>70/)<br>   res1@tmYLLabels =(/&quot;36.00&quot;,<wbr>&quot;37.1&quot;,&quot;38.2&quot;,&quot;39.3&quot;,&quot;40.3&quot;,&quot;<wbr>41.4&quot;,&quot;42.70&quot;/)<br><br>   res1@gsnCenterString  = &quot;<wbr>2015-11-29-20&quot;<br><br>   plot1 = gsn_csm_contour_<wbr>map(wks,umask_data1,res1)<br>   wmsetp(&quot;vrs - size of <wbr>reference vector in user <wbr>space&quot;,15.0)<br>   wmsetp(&quot;vrn - size of <wbr>reference vector on plot in <wbr>NDC space&quot;, 0.1)<br>   wmsetp(&quot;vcw - linewidth <wbr>scale&quot;,3.)<br>   wmsetp(&quot;vcc - vector color&quot;<wbr>,1)<br>   wmsetp(&quot;vch - controls the <wbr>vector arrow head size&quot;,0.01)<br>   wmvectmap(wks, tofloat(<wbr>fields1(2,:)), tofloat(<wbr>fields1(1,:)), tofloat(<wbr>fields1(3,:))*2.5, tofloat(<wbr>fields1(4,:))*2.5)<br>   wmvlbl(wks,0.95,0.)<br>   <br>   res2 =  True<br>   res2 =  res<br>   res2@tmXBMode = &quot;Explicit&quot;<br>   res2@tmXBValues =(/113.40,<wbr>114.7,116.0,117.3,118.6,119.9/<wbr>)<br>   res2@tmXBLabels =(/&quot;113.40&quot;<wbr>,&quot;114.7&quot;,&quot;116.0&quot;,&quot;117.3&quot;,&quot;118.<wbr>6&quot;,&quot;119.9&quot;/)<br><br>   res2@tmYLMode = &quot;Explicit&quot;<br>   res2@tmYLValues =(/36.00,<wbr>37.1,38.2,39.3,40.3,41.4,42.<wbr>70/)<br>   res2@tmYLLabels =(/&quot;36.00&quot;,<wbr>&quot;37.1&quot;,&quot;38.2&quot;,&quot;39.3&quot;,&quot;40.3&quot;,&quot;<wbr>41.4&quot;,&quot;42.70&quot;/)<br>  <br>   res2@gsnCenterString  = &quot;<wbr>2015-11-30-08&quot;<br>   plot2 = gsn_csm_contour_<wbr>map(wks,umask_data2,res2)<br>   ; wmsetp(&quot;vrs - size of <wbr>reference vector in user <wbr>space&quot;,15.0)<br>   ; wmsetp(&quot;vrn - size of <wbr>reference vector on plot in <wbr>NDC space&quot;, 0.1)<br>   ; wmsetp(&quot;vcw - linewidth <wbr>scale&quot;,3.)<br>   ; wmsetp(&quot;vcc - vector <wbr>color&quot;,1)<br>   ; wmsetp(&quot;vch - controls <wbr>the vector arrow head size&quot;,0.<wbr>01)<br>   ; wmvectmap(wks, tofloat(<wbr>fields2(2,:)), tofloat(<wbr>fields2(1,:)), tofloat(<wbr>fields2(3,:))*2.5, tofloat(<wbr>fields2(4,:))*2.5)<br><br><br>   res3 =  True<br>   res3 =  res<br>   res3@tmXBMode = &quot;Explicit&quot;<br>   res3@tmXBValues =(/113.40,<wbr>114.7,116.0,117.3,118.6,119.9/<wbr>)<br>   res3@tmXBLabels =(/&quot;113.40&quot;<wbr>,&quot;114.7&quot;,&quot;116.0&quot;,&quot;117.3&quot;,&quot;118.<wbr>6&quot;,&quot;119.9&quot;/)<br><br>   res3@tmYLMode = &quot;Explicit&quot;<br>   res3@tmYLValues =(/36.00,<wbr>37.1,38.2,39.3,40.3,41.4,42.<wbr>70/)<br>   res3@tmYLLabels =(/&quot;36.00&quot;,<wbr>&quot;37.1&quot;,&quot;38.2&quot;,&quot;39.3&quot;,&quot;40.3&quot;,&quot;<wbr>41.4&quot;,&quot;42.70&quot;/)<br>  <br>   res3@gsnCenterString  = &quot;<wbr>2015-11-30-14&quot;<br>   plot3 = gsn_csm_contour_<wbr>map(wks,umask_data3,res3)<br>   ; wmsetp(&quot;vrs - size of <wbr>reference vector in user <wbr>space&quot;,15.0)<br>   ; wmsetp(&quot;vrn - size of <wbr>reference vector on plot in <wbr>NDC space&quot;, 0.1)<br>   ; wmsetp(&quot;vcw - linewidth <wbr>scale&quot;,3.)<br>   ; wmsetp(&quot;vcc - vector <wbr>color&quot;,1)<br>   ; wmsetp(&quot;vch - controls <wbr>the vector arrow head size&quot;,0.<wbr>01)<br>   ; wmvectmap(wks, tofloat(<wbr>fields3(2,:)), tofloat(<wbr>fields3(1,:)), tofloat(<wbr>fields3(3,:))*2.5, tofloat(<wbr>fields3(4,:))*2.5)<br><br>   res4 =  True<br>   res4 =  res<br>   res4@tmXBMode = &quot;Explicit&quot;<br>   res4@tmXBValues =(/113.40,<wbr>114.7,116.0,117.3,118.6,119.9/<wbr>)<br>   res4@tmXBLabels =(/&quot;113.40&quot;<wbr>,&quot;114.7&quot;,&quot;116.0&quot;,&quot;117.3&quot;,&quot;118.<wbr>6&quot;,&quot;119.9&quot;/)<br><br>   res4@tmYLMode = &quot;Explicit&quot;<br>   res4@tmYLValues =(/36.00,<wbr>37.1,38.2,39.3,40.3,41.4,42.<wbr>70/)<br>   res4@tmYLLabels =(/&quot;36.00&quot;,<wbr>&quot;37.1&quot;,&quot;38.2&quot;,&quot;39.3&quot;,&quot;40.3&quot;,&quot;<wbr>41.4&quot;,&quot;42.70&quot;/)<br>   <br>   res4@gsnCenterString  = &quot;<wbr>2015-11-30-20&quot;<br>   plot4 = gsn_csm_contour_<wbr>map(wks,umask_data4,res4)<br>   ; wmsetp(&quot;vrs - size of <wbr>reference vector in user <wbr>space&quot;,15.0)<br>   ; wmsetp(&quot;vrn - size of <wbr>reference vector on plot in <wbr>NDC space&quot;, 0.1)<br>   ; wmsetp(&quot;vcw - linewidth <wbr>scale&quot;,3.)<br>   ; wmsetp(&quot;vcc - vector <wbr>color&quot;,1)<br>   ; wmsetp(&quot;vch - controls <wbr>the vector arrow head size&quot;,0.<wbr>01)<br>   ; wmvectmap(wks, tofloat(<wbr>fields4(2,:)), tofloat(<wbr>fields4(1,:)), tofloat(<wbr>fields4(3,:))*2.5, tofloat(<wbr>fields4(4,:))*2.5)<br><br>  if(add_shapefile_outlines) <wbr>then<br>     lnres  = True<br>     poly1 = gsn_add_<wbr>shapefile_polylines(wks,plot1,<wbr>shp_fname,lnres)<br>     poly2 = gsn_add_<wbr>shapefile_polylines(wks,plot2,<wbr>shp_fname,lnres)<br>     poly3 = gsn_add_<wbr>shapefile_polylines(wks,plot3,<wbr>shp_fname,lnres)<br>     poly4 = gsn_add_<wbr>shapefile_polylines(wks,plot4,<wbr>shp_fname,lnres)<br>  end if<br>  <br>   pres                  = <wbr>True<br>   pres@gsnMaximize      = <wbr>True<br>   pres@gsnPanelLabelBar = <wbr>False<br>   pres@txString           = &quot;<wbr>PM2.5 and station vector&quot;<br>   ;pres@pmLabelBarWidthF = 0.<wbr>6<br>   pres@lbLabelFontHeightF  = <wbr>0.01              ; make <wbr>labels smaller<br><br>   ; wmsetp(&quot;vrs - size of <wbr>reference vector in user <wbr>space&quot;,15.0)<br>   ; wmsetp(&quot;vrn - size of <wbr>reference vector on plot in <wbr>NDC space&quot;, 0.1)<br>   ; wmsetp(&quot;vcw - linewidth <wbr>scale&quot;,3.)<br>   ; wmsetp(&quot;vcc - vector <wbr>color&quot;,1)<br>   ; wmsetp(&quot;vch - controls <wbr>the vector arrow head size&quot;,0.<wbr>01)<br>   ; wmvectmap(wks, tofloat(<wbr>fields1(2,:)), tofloat(<wbr>fields1(1,:)), tofloat(<wbr>fields1(3,:))*2.5, tofloat(<wbr>fields1(4,:))*2.5)<br>   ; wmvectmap(wks, tofloat(<wbr>fields2(2,:)), tofloat(<wbr>fields2(1,:)), tofloat(<wbr>fields2(3,:))*2.5, tofloat(<wbr>fields2(4,:))*2.5)<br>   ; wmvectmap(wks, tofloat(<wbr>fields3(2,:)), tofloat(<wbr>fields3(1,:)), tofloat(<wbr>fields3(3,:))*2.5, tofloat(<wbr>fields3(4,:))*2.5)<br>   ; wmvectmap(wks, tofloat(<wbr>fields4(2,:)), tofloat(<wbr>fields4(1,:)), tofloat(<wbr>fields4(3,:))*2.5, tofloat(<wbr>fields4(4,:))*2.5)<br>   ; wmsetp(&quot;vrs&quot;,5.)<br>   ; wmsetp(&quot;vrn&quot;,0.1)<br>   ; wmsetp(&quot;vlb - for <wbr>setting the background color&quot;,<wbr>0)<br>   ; wmsetp(&quot;vrs&quot;,5.)<br><br>   wmvlbl(wks, 0.8 ,0.2)<br>   <br>   gsn_panel(wks,(/plot1,<wbr>plot2,plot3,plot4/),(/2,2/),<wbr>pres)<br><br>   ;draw(plot)<br><br>  ; wmsetp(&quot;vch&quot;, 0.05)<br>  ; wmsetp(&quot;vcc&quot;, 1)<br>  ; wmsetp(&quot;vcw&quot;, 3.)<br>  ; wmsetp(&quot;wbs&quot;, 0.05)<br>  ; wmsetp(&quot;col&quot;, 1)<br>  ; wmsetp(&quot;wbs&quot;, 0.06)<br>  ; wmsetp(&quot;ezf&quot;,2)<br>  ; wmsetp(&quot;wbs&quot;,0.12)<br>  ; wmsetp(&quot;col&quot;, 1)<br>  ; wmsetp(&quot;sht&quot;, 2.0)<br>  ; wmsetp(&quot;ars&quot;,0.05)<br>  ; wmsetp(&quot;arl&quot;,1.5)<br>  ; wmsetp(&quot;blw&quot;, 4.0)<br>  ; wmsetp(&quot;wbs&quot;, 0.03)<br><br>        ; wmsetp(&quot;vrs - size <wbr>of reference vector in user <wbr>space&quot;,15.0)<br>        ; wmsetp(&quot;vrn - size <wbr>of reference vector on plot <wbr>in NDC space&quot;, 0.1)<br>        ; wmsetp(&quot;vcw - <wbr>linewidth scale&quot;,3.)<br>        ; wmsetp(&quot;vcc - <wbr>vector color&quot;,1)<br>        ; wmsetp(&quot;vch - <wbr>controls the vector arrow <wbr>head size&quot;,0.01)<br>        ; wmvectmap(wks, <wbr>tofloat(fields1(2,:)), <wbr>tofloat(fields1(1,:)), <wbr>tofloat(fields1(3,:))*2.5, <wbr>tofloat(fields1(4,:))*2.5)<br>        ; wmvectmap(wks, <wbr>tofloat(fields2(2,:)), <wbr>tofloat(fields2(1,:)), <wbr>tofloat(fields2(3,:))*2.5, <wbr>tofloat(fields2(4,:))*2.5)<br>        ; wmvectmap(wks, <wbr>tofloat(fields3(2,:)), <wbr>tofloat(fields3(1,:)), <wbr>tofloat(fields3(3,:))*2.5, <wbr>tofloat(fields3(4,:))*2.5)<br>        ; wmvectmap(wks, <wbr>tofloat(fields4(2,:)), <wbr>tofloat(fields4(1,:)), <wbr>tofloat(fields4(3,:))*2.5, <wbr>tofloat(fields4(4,:))*2.5)<br>        ; wmsetp(&quot;vrs&quot;,5.)<br>        ; wmsetp(&quot;vrn&quot;,0.1)<br>        ; wmsetp(&quot;vlb - for <wbr>setting the background color&quot;,<wbr>0)<br>        ; wmsetp(&quot;vrs&quot;,5.)<br>       ; wmvlbl(wks,0.85,0.78)<br><br>  ; wmvectmap(wks, tofloat(<wbr>fields(2,:)), tofloat(fields(<wbr>1,:)), tofloat(fields(3,:)), <wbr>tofloat(fields(4,:)))<br>  ; wmvlbl(wks, 1.0, 0.0)<br>  <br><br>  ; frame(wks)<br><br><br>end<br><br></span></div><div>++++++++++++++++++++++++++++++<wbr>++++++++++++++++++++++++++++++<wbr>+++++++++++++++</div><div>the final figure didn&#39;t distribute the windbard to every subplot ,but in the center of whole page.</div><div><img src="cid:_Foxmail.1@c83c190c-7559-7857-56f7-2a1470e13538" border="0"></div><div><br></div><div>the effect is the above.</div><div><br></div><div>anybody tell me the method about how to overlay those wmvectmap in individual subplot will be appreciated.</div><div><br></div><div><br></div><div>thanks</div><div><br></div><div><br></div><div><br></div><hr style="width:210px;height:1px" color="#b5c4df" size="1" align="left"><span class="HOEnZb"><font color="#888888">
<div><span><div style="MARGIN:10px;FONT-FAMILY:verdana;FONT-SIZE:10pt"><div><a href="mailto:dyjbean@gmail.com" target="_blank">dyjbean@gmail.com</a></div></div></span></div>
</font></span></div><br>______________________________<wbr>_________________<br>
ncl-talk mailing list<br>
<a href="mailto:ncl-talk@ucar.edu">ncl-talk@ucar.edu</a><br>
List instructions, subscriber options, unsubscribe:<br>
<a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" rel="noreferrer" target="_blank">http://mailman.ucar.edu/<wbr>mailman/listinfo/ncl-talk</a><br>
<br></blockquote></div><br></div>