def plot_on_region(ax=None, **kwargs): """Plot target regions""" from gammapy.spectrum import SpectrumExtraction ax = plot_exclusion_mask() if ax is None else ax val = read_yaml(SpectrumExtraction.REGIONS_FILE) on_region = SkyCircleRegion.from_dict(val['on_region']) on_region.plot(ax, **kwargs) return ax
def make_excluded_sources(): # centers = SkyCoord([84, 82], [23, 21], unit='deg') centers = SkyCoord([83.63, 83.63], [22.01, 22.01], unit='deg', frame='icrs') radius = Angle('0.3 deg') sources = SkyCircleRegion(pos=centers, radius=radius) catalog = Table() catalog["RA"] = sources.pos.data.lon catalog["DEC"] = sources.pos.data.lat catalog["Radius"] = sources.radius return catalog
from astropy.coordinates import SkyCoord, Angle from astropy.wcs import WCS from gammapy.region import find_reflected_regions, SkyCircleRegion from gammapy.image import ExclusionMask, make_empty_image from gammapy.utils.testing import requires_data hdu = make_empty_image(nxpix=801, nypix=701, binsz=0.01, coordsys='CEL', xref=83.2, yref=22.7) mask = ExclusionMask.create_random(hdu, n=8, min_rad=30, max_rad=80) pos = SkyCoord(80.2, 23.5, unit='deg', frame='icrs') radius = Angle(0.4, 'deg') test_region = SkyCircleRegion(pos=pos, radius=radius) center = SkyCoord(82.8, 22.5, unit='deg', frame='icrs') regions = find_reflected_regions(test_region, center, mask) import matplotlib.pyplot as plt wcs = WCS(hdu.header) fig = plt.figure(figsize=(8, 5), dpi=80) ax = fig.add_axes([0.1, 0.1, 0.8, 0.8], projection=wcs) mask.plot(ax) for reg in regions: patch = reg.plot(ax, facecolor='red') ax.add_patch(patch) patch2 = test_region.plot(ax, facecolor='blue') ax.add_patch(patch2) plt.show()
from astropy.coordinates import SkyCoord, Angle from astropy.wcs import WCS from gammapy.region import find_reflected_regions, SkyCircleRegion from gammapy.image import ExclusionMask, make_empty_image from gammapy.utils.testing import requires_data hdu = make_empty_image(nxpix=801, nypix=701, binsz=0.01, coordsys='CEL', xref=83.2, yref=22.7) mask = ExclusionMask.create_random(hdu, n=8, min_rad=30, max_rad=80) pos = SkyCoord(80.2, 23.5, unit='deg', frame='icrs') radius = Angle(0.4, 'deg') test_region = SkyCircleRegion(pos=pos, radius=radius) center = SkyCoord(82.8, 22.5, unit='deg', frame='icrs') regions = find_reflected_regions(test_region, center, mask) import matplotlib.pyplot as plt wcs = WCS(hdu.header) fig = plt.figure(figsize=(8, 5), dpi=80) ax = fig.add_axes([0.1, 0.1, 0.8, 0.8], projection=wcs) mask.plot(ax) for reg in regions: reg.plot(ax, facecolor='red') test_region.plot(ax, facecolor='blue') plt.show()
from astropy.wcs import WCS from gammapy.region import find_reflected_regions, SkyCircleRegion from gammapy.image import ExclusionMask from gammapy.utils.testing import requires_data mask = ExclusionMask.empty(name='Exclusion Mask', nxpix=801, nypix=701, binsz=0.01, coordsys='CEL', xref=83.2, yref=22.7) mask.fill_random_circles(n=8, min_rad=30, max_rad=80) pos = SkyCoord(80.2, 23.5, unit='deg', frame='icrs') radius = Angle(0.4, 'deg') test_region = SkyCircleRegion(pos=pos, radius=radius) center = SkyCoord(82.8, 22.5, unit='deg', frame='icrs') regions = find_reflected_regions(test_region, center, mask) import matplotlib.pyplot as plt fig = plt.figure(figsize=(8, 5), dpi=80) ax = fig.add_axes([0.1, 0.1, 0.8, 0.8], projection=mask.wcs) mask.plot(ax, fig) for reg in regions: reg.plot(ax, facecolor='red') test_region.plot(ax, facecolor='blue') plt.show()