fili = "wsi.grb2" f = addfile (fili , "r") ; could also have ccm, grb or hdf suffix vNames = getfilevarnames (f) ; get names of all variables on file nNames = dimsizes (vNames) ; number of variables on the file print (vNames) refc = f->VAR_0_15_15_P0_L1_GLL0 lat = f ->lat_0 lon = f ->lon_0 londim = dimsizes(lon) lon2 = new((/londim/),float) print(londim) do i=0, londim-1 ; Convert deg East if (lon(i) .le. 180) lon2(i) = lon(i) else lon2(i) = 360 - lon(i) lon2(i) = -lon2(i) end if end do lon2@units = "degrees_east" refc!1 = "lon_0" refc&lon_0 = lon2 printVarSummary(refc) printVarSummary(lat) printVarSummary(lon2) name = "test" wks = gsn_open_wks("png", name) ; open a workstation colors = (/"white", "black", "cyan", "deepskyblue","mediumblue","green","chartreuse3","chartreuse4", \ "yellow","gold3","darkorange","red","red3","red4","magenta","mediumorchid3"/) gsn_define_colormap(wks,colors) ; choose colormap cnres = True ; contour/map resources cnres@gsnDraw = False ; Turn these off. We cnres@gsnFrame = False ; will overlay plots cnres@gsnAddCyclic = False ;--- minlat = 30 maxlat = 48 minlon = -110 maxlon = -76 cnres@mpLimitMode = "LatLon" cnres@mpMinLatF = minlat ; map area cnres@mpMaxLatF = maxlat ; latitudes cnres@mpMinLonF = minlon ; and cnres@mpMaxLonF = maxlon ; longitudes cnres@mpOutlineBoundarySets = "AllBoundaries" cnres@mpDataSetName = "Earth..3" cnres@gsnAddCyclic = False ; regional data cnres@cnFillOn = True cnres@cnLinesOn = False ; turn off contour lines cnres@gsnMaximize = True ; use full page ;---Add subtitles to contour plot cnres@gsnLeftString = " " cnres@gsnRightString = " " ;---Create the two individual plots contour_fill_plot = gsn_csm_contour_map(wks,refc,cnres) draw(contour_fill_plot) ; This will draw everything frame(wks)