<div dir="ltr"><div>ncl-talk has no experience with the GCOM-C Level 2 product (ARNP)</div><div>Could you ftp a sample file?  dropbox?<br></div><div><br></div><div>ftp <a href="http://ftp.cgd.ucar.edu">ftp.cgd.ucar.edu</a></div><div>anonymous</div><div>your_email</div><div>cd incoming<br></div><div>put GC1SG1_20200105D01D_T0529_L2SG_ARNPK_2000.h5</div><div>quit</div><div><br></div><div>You can notify me directly after successful file transmission.</div><div><br></div><div>Cheers<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Mar 25, 2021 at 6:51 AM Tomoko Koyama via ncl-talk <<a href="mailto:ncl-talk@mailman.ucar.edu">ncl-talk@mailman.ucar.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello.<br>
<br>
I'd like to visualize GCOM-C Level 2 tile data which format is hdf5.<br>
<br>
The latitude/longitude to each pixel need to be calculated and I wrote a code for visualization.<br>
I followed page 4-15 of the provided manual, GCOM-C "SHIKISAI" Data Users Handbook.<br>
(<a href="https://gportal.jaxa.jp/gpr/assets/mng_upload/GCOM-C/GCOM-C_SHIKISAI_Data_Users_Handbook_en.pdf" rel="noreferrer" target="_blank">https://gportal.jaxa.jp/gpr/assets/mng_upload/GCOM-C/GCOM-C_SHIKISAI_Data_Users_Handbook_en.pdf</a>)<br>
<br>
Unfortunately, the result doesn't look right: I plotted the "over land aerosol optical thickness data", but appeared data are over ocean.<br>
Is this a projection issue? <br>
<br>
If there's any sample code for GCOM-C data visualization, can anybody share with me?<br>
<br>
Thank you very much in advance,<br>
Tomoko<br>
<br>
;========================================================================<br>
; read/plot GCOM-C Level 2 product (ARNP)<br>
<br>
begin<br>
;************************************************<br>
; read in data<br>
;************************************************<br>
  setfileoption("h5", "FileStructure", "Advanced")<br>
<br>
  fn = "/Users/tkoyama/Research/SGLI/L2/GC1SG1_20200105D01D_T0529_L2SG_ARNPK_2000.h5"<br>
<br>
  var = "AROT_land"<br>
  ;var = "AROT_ocean"<br>
<br>
  pltDir        = "/Users/tkoyama/Research/Images/"<br>
  pltName       = "test_"+var<br>
  pltType       = "X11"<br>
<br>
  fi = addfile(fn, "r")<br>
<br>
  g1 = fi=>/Geometry_data<br>
<br>
  ; Get attribute names of the group<br>
  g1atts= getvaratts(g1)<br>
  ;print(g1atts)<br>
<br>
  ;---------------------------------------------------------------------------------------<br>
  ; Derive lat/lon of each grid point<br>
  ;<br>
  ; Four corners of "T0529" tile<br>
  ; lat = (/ 30.0, 30.0, 40.0, 40.0 /)<br>
  ; lon = (/127.0171, 138.5641, 143.5948, 156.6489/)<br>
  ;<br>
  pi            = 3.1416<br>
<br>
  ; Folowing page 4-15 of the provided manual,<br>
  ; GCOM-C "SHIKISAI" Data Users Handbook<br>
  ; <a href="https://gportal.jaxa.jp/gpr/assets/mng_upload/GCOM-C/GCOM-C_SHIKISAI_Data_Users_Handbook_en.pdf" rel="noreferrer" target="_blank">https://gportal.jaxa.jp/gpr/assets/mng_upload/GCOM-C/GCOM-C_SHIKISAI_Data_Users_Handbook_en.pdf</a><br>
<br>
  lin_tile      = 1200<br>
  col_tile      = 1200<br>
  vtile         = 5<br>
  htile         = 29<br>
  vtile_num     = 18<br>
  htile_num     = 36<br>
<br>
  lat = new((/col_tile, lin_tile/), float)<br>
  lon = new((/col_tile, lin_tile/), float)<br>
<br>
  d     = 180.0/lin_tile/vtile_num<br>
  NL    = 180.0/d<br>
  NP0   = 2*round(NL,3)<br>
<br>
  lin_tot       = ispan(0, lin_tile-1, 1) + vtile * lin_tile<br>
  col_tot       = ispan(0, col_tile-1, 1) + htile * col_tile<br>
<br>
  lat_tmp       = 90.0 - (lin_tot + 0.5) * d    ; in degree<br>
<br>
  NPi   = NP0*cos(lat_tmp*pi/180.0)<br>
<br>
  do ilin = 0, lin_tile-1<br>
    lat(:,ilin) = lat_tmp(ilin)<br>
    do jcol = 0, col_tile-1<br>
       lon(jcol,ilin) = 360.0/NPi(ilin) * (col_tot(jcol) - NP0/2 + 0.5) ; in degre<br>
    end do<br>
  end do<br>
<br>
  ;---------------------------------------------------------------------------------------<br>
  time = short2flt_hdf( g1->Obs_time )<br>
  t =  g1->Obs_time<br>
  t_atts = getvaratts(t)<br>
  ;print(t@$t_atts(1)$)                 ; This shows the attributes of the target variable<br>
<br>
  ;---------------------------------------------------------------------------------------<br>
  g2 = fi=>/Image_data<br>
  g2atts = getvaratts(g2)<br>
<br>
  x = g2->$var$<br>
  ;print(getvaratts(x))<br>
<br>
  ; get AOT<br>
  val = where(x.ne.x@Error_DN, x*x@Slope + x@Offset, -999.9)<br>
  val@Spatial_resolution = x@Spatial_resolution<br>
  val@Spatial_resolution_unit = x@Spatial_resolution_unit<br>
  val@Unit = x@Unit<br>
  val@_FillValue        = -999.9<br>
  ;printMinMax(val, True)<br>
<br>
;************************************************<br>
; Plot<br>
;************************************************<br>
  wks = gsn_open_wks(pltType, pltDir+pltName)<br>
<br>
  setvalues NhlGetWorkspaceObjectId()<br>
      "wsMaximumSize": 100000000        ; need some extra workspace<br>
  end setvalues<br>
<br>
  res                   = True<br>
  res@gsnAddCyclic      = False         ; data not global<br>
<br>
  res@gsnMaximize       = True          ; make ps/eps/pdf large<br>
  res@gsnPaperOrientation       = "portrait"<br>
<br>
  res@cnFillOn          = True          ; turn on color fill<br>
  res@cnFillPalette     = "matlab_jet"  ; set color map<br>
  res@cnLinesOn         = False         ; turn off contour lines<br>
  res@cnFillMode        = "RasterFill"  ; Raster Mode<br>
<br>
  res@cnLevelSelectionMode      = "ManualLevels"<br>
  res@cnMinLevelValF  = 0               ; set the minimum contour level<br>
  res@cnMaxLevelValF  = 2               ; set the maximum contour level<br>
  res@cnLevelSpacingF = 0.2             ; set the interval between contours<br>
<br>
  res@lbOrientation     = "vertical"    ; vertical label barb's<br>
  res@lbLabelFontHeightF= 0.012         ; change font size [make smaller]<br>
  res@pmLabelBarWidthF  = 0.1           ; make thinner<br>
<br>
  res@tiMainString      = var<br>
<br>
  res@sfYArray          = lat<br>
  res@sfXArray          = lon<br>
<br>
  res@mpMinLatF         = 28.0<br>
  res@mpMaxLatF         = 42.0<br>
  res@mpMinLonF         = 125.0<br>
  res@mpMaxLonF         = 158.0<br>
<br>
  ;plot = gsn_csm_contour(wks,val,res)<br>
  plot  = gsn_csm_contour_map(wks,val,res)<br>
<br>
end<br>
<br>
_______________________________________________<br>
ncl-talk mailing list<br>
<a href="mailto:ncl-talk@mailman.ucar.edu" target="_blank">ncl-talk@mailman.ucar.edu</a><br>
List instructions, subscriber options, unsubscribe:<br>
<a href="https://mailman.ucar.edu/mailman/listinfo/ncl-talk" rel="noreferrer" target="_blank">https://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
</blockquote></div>