[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[python #UUX-823225]: Blurred output trying to visualize GOES16 near the edge of the CONUS sector



Greetings!

Apologies for the delayed response.

I don't have the library you're using to download the GOES data, but I tried to 
replicate using the raw GOES 16 data I have available. To my eye, I'm not 
seeing any unexpected bluriness.

Can you send an image with the blurring you describe? Can you also send an 
image that looks as sharp as you expect?

Cheers!

Ryan

> Hi, while trying to visualize GOES 16 CONUS sector observation with the
> following script I'm having a blurred output that is certainly supposed to
> appear due to the region defined by my set_extent close to the edge of the
> conus sector.
> 
> The thing is that is very  common to find differents visualization for the
> same region in the web with a very nice (not blurred) viasualization like "
> https://weather.msfc.nasa.gov/goes/abi/goesEastconusband02.html";. So, I'm
> wondering if there is some kind of correction that can be applied in order
> to have a nicer visualization.
> 
> import metpy
> from goes2go.data import goes_latest
> import matplotlib.pyplot as plt
> import cartopy.crs as ccrs
> import numpy as np
> import xarray
> 
> # Download a GOES ABI dataset
> G = goes_latest()
> 
> ch2 = G["CMI_C02"].data
> ch2 = np.clip(ch2, 0, 1)
> gamma = 2.2
> ch2 = np.power(ch2, 1 / gamma)
> 
> # We'll use the `CMI_C02` variable as a 'hook' to get the CF metadata.
> dat = G.metpy.parse_cf("CMI_C02")
> 
> geos = dat.metpy.cartopy_crs
> 
> # We also need the x (north/south) and y (east/west) axis sweep of the ABI
> data
> x = dat.x
> y = dat.y
> 
> fig = plt.figure(figsize=(15, 6), dpi=200)
> 
> # Create axis with Geostationary projection
> ax = fig.add_subplot(1, 1, 1, projection=geos)
> 
> # Add the RGB image to the figure. The data is in the same projection as the
> # axis we just created.
> ax.imshow(
> ch2, cmap="Greys_r",  origin="upper", extent=(x.min(), x.max(),
> y.min(), y.max()), transform=geos
> )
> # ax.set_extent([-100, -90, 17.5, 20.2], crs=ccrs.PlateCarree())
> ax.set_extent([-72.2, -68, 17.5, 20.2], crs=ccrs.PlateCarree())
> 
> 


Ticket Details
===================
Ticket ID: UUX-823225
Department: Support Python
Priority: Low
Status: Closed
===================
NOTE: All email exchanges with Unidata User Support are recorded in the Unidata 
inquiry tracking system and then made publicly available through the web.  If 
you do not want to have your interactions made available in this way, you must 
let us know in each email you send to us.