########################################################
# Started Logging At: 2024-01-18 20:36:28
########################################################
########################################################
# # Started Logging At: 2024-01-18 20:36:30
########################################################
target_header_innercmz = fits.Header.fromstring("""
NAXIS   =                    2
NAXIS1  =                 3000
NAXIS2  =                 1000
CTYPE1  = 'GLON-CAR'
CRPIX1  =               1500.5
CRVAL1  =                  0.0
CDELT1  =               -0.001
CUNIT1  = 'deg     '
CTYPE2  = 'GLAT-CAR'
CRPIX2  =                500.5
CRVAL2  =                  0.0
CDELT2  =                0.001
CUNIT2  = 'deg     '
COORDSYS= 'icrs    '
""", sep='\n')
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)
########################################################
# Started Logging At: 2024-01-18 20:37:43
########################################################
########################################################
# # Started Logging At: 2024-01-18 20:37:43
########################################################
########################################################
# Started Logging At: 2024-01-18 20:38:01
########################################################
########################################################
# # Started Logging At: 2024-01-18 20:38:01
########################################################
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2ds = regions.RectangleSkyRegion(
    coordinates.SkyCoord(000.63*u.deg,  -00.05*u.deg, frame='galactic'),
    height=50*u.arcsec,
    width=25*u.arcsec)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'
sgrb2ds.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)




point_sgrb2n.set_visible(False)
point_sgrb2m_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins3.set_visible(False)


axins4 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins4.axis('off')
axins4.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins4.axis(merge_mask.bbox.extent)
mark4 = mark_inset(ax, axins4, loc1=1, loc2=3, edgecolor='r')
point_sgrb2ds_in = sgrb2ds.to_pixel(axins3.wcs).plot(ax=axins4)
axins4.coords['glat'].set_ticklabel(visible=False)
axins4.coords['glon'].set_ticklabel(visible=False)
axins4.coords['glat'].set_ticks_visible(False)
axins4.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2ds.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2ds = regions.RectangleSkyRegion(
    coordinates.SkyCoord('17:47:21.0856811259 -28:24:48.9796510714', frame='icrs', unit=(u.h, u.deg)),
    width=96*u.arcsec,
    height=2.77*u.arcmin)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'
sgrb2ds.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)




point_sgrb2n.set_visible(False)
point_sgrb2m_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins3.set_visible(False)


axins4 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins4.axis('off')
axins4.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins4.axis(merge_mask.bbox.extent)
mark4 = mark_inset(ax, axins4, loc1=1, loc2=3, edgecolor='r')
point_sgrb2ds_in = sgrb2ds.to_pixel(axins3.wcs).plot(ax=axins4)
axins4.coords['glat'].set_ticklabel(visible=False)
axins4.coords['glon'].set_ticklabel(visible=False)
axins4.coords['glat'].set_ticks_visible(False)
axins4.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2ds.png", bbox_inches='tight', dpi=200)
########################################################
# Started Logging At: 2024-01-18 21:22:04
########################################################
########################################################
# # Started Logging At: 2024-01-18 21:22:04
########################################################
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2ds = regions.RectangleSkyRegion(
    coordinates.SkyCoord('17:47:21.0856811259 -28:24:48.9796510714', frame='icrs', unit=(u.h, u.deg)).galactic,
    width=96*u.arcsec,
    height=2.77*u.arcmin)
brick = regions.RectangleSkyRegion(
    coordinates.SkyCoord(0.2499811648, 0.0187129377, frame='galactic', unit=(u.deg, u.deg)).fk5,
    width=2.46*u.arcmin,
    height=5.9*u.arcmin)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'
sgrb2ds.visual['edgecolor'] = 'r'
brick.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)




point_sgrb2n.set_visible(False)
point_sgrb2m_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins3.set_visible(False)


axins4 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins4.axis('off')
axins4.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins4.axis(merge_mask.bbox.extent)
mark4 = mark_inset(ax, axins4, loc1=1, loc2=3, edgecolor='r')
point_sgrb2ds_in = sgrb2ds.to_pixel(axins3.wcs).plot(ax=axins4)
axins4.coords['glat'].set_ticklabel(visible=False)
axins4.coords['glon'].set_ticklabel(visible=False)
axins4.coords['glat'].set_ticks_visible(False)
axins4.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2ds.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2ds = regions.RectangleSkyRegion(
    coordinates.SkyCoord('17:47:21.0856811259 -28:24:48.9796510714', frame='icrs', unit=(u.h, u.deg)).galactic,
    width=96*u.arcsec,
    height=2.77*u.arcmin)
brick = regions.RectangleSkyRegion(
    coordinates.SkyCoord(0.2499811648, 0.0187129377, frame='galactic', unit=(u.deg, u.deg)).fk5,
    width=2.46*u.arcmin,
    height=5.9*u.arcmin)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'
sgrb2ds.visual['edgecolor'] = 'r'
brick.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

dsmask = sgrb2ds.to_pixel(ax.wcs).to_mask()
brickmask = brick.to_pixel(ax.wcs).to_mask()

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)




point_sgrb2n.set_visible(False)
point_sgrb2m_in.set_visible(False)
for pp in mark3:
    pp.set_visible(False)
axins3.set_visible(False)


axins4 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins4.axis('off')
axins4.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins4.axis(dsmask.bbox.extent)
mark4 = mark_inset(ax, axins4, loc1=1, loc2=3, edgecolor='r')
point_sgrb2ds_in = sgrb2ds.to_pixel(axins4.wcs).plot(ax=axins4)
axins4.coords['glat'].set_ticklabel(visible=False)
axins4.coords['glon'].set_ticklabel(visible=False)
axins4.coords['glat'].set_ticks_visible(False)
axins4.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2ds.png", bbox_inches='tight', dpi=200)




point_sgrb2ds_in.set_visible(False)
for pp in mark4:
    pp.set_visible(False)
axins4.set_visible(False)


axins5 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins5.axis('off')
axins5.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins5.axis(brick_mask.bbox.extent)
mark5 = mark_inset(ax, axins5, loc1=1, loc2=3, edgecolor='r')
point_brick_in = brick.to_pixel(axins4.wcs).plot(ax=axins5)
axins5.coords['glat'].set_ticklabel(visible=False)
axins5.coords['glon'].set_ticklabel(visible=False)
axins5.coords['glat'].set_ticks_visible(False)
axins5.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_brick.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2ds = regions.RectangleSkyRegion(
    coordinates.SkyCoord('17:47:21.0856811259 -28:24:48.9796510714', frame='icrs', unit=(u.h, u.deg)).galactic,
    width=96*u.arcsec,
    height=2.77*u.arcmin)
brick = regions.RectangleSkyRegion(
    coordinates.SkyCoord(0.2499811648, 0.0187129377, frame='galactic', unit=(u.deg, u.deg)).fk5,
    width=2.46*u.arcmin,
    height=5.9*u.arcmin)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'
sgrb2ds.visual['edgecolor'] = 'r'
brick.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

dsmask = sgrb2ds.to_pixel(ax.wcs).to_mask()
brick_mask = brick.to_pixel(ax.wcs).to_mask()

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)




point_sgrb2n.set_visible(False)
point_sgrb2m_in.set_visible(False)
for pp in mark3:
    pp.set_visible(False)
axins3.set_visible(False)


axins4 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins4.axis('off')
axins4.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins4.axis(dsmask.bbox.extent)
mark4 = mark_inset(ax, axins4, loc1=1, loc2=3, edgecolor='r')
point_sgrb2ds_in = sgrb2ds.to_pixel(axins4.wcs).plot(ax=axins4)
axins4.coords['glat'].set_ticklabel(visible=False)
axins4.coords['glon'].set_ticklabel(visible=False)
axins4.coords['glat'].set_ticks_visible(False)
axins4.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2ds.png", bbox_inches='tight', dpi=200)




point_sgrb2ds_in.set_visible(False)
for pp in mark4:
    pp.set_visible(False)
axins4.set_visible(False)


axins5 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins5.axis('off')
axins5.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins5.axis(brick_mask.bbox.extent)
mark5 = mark_inset(ax, axins5, loc1=1, loc2=3, edgecolor='r')
point_brick_in = brick.to_pixel(axins4.wcs).plot(ax=axins5)
axins5.coords['glat'].set_ticklabel(visible=False)
axins5.coords['glon'].set_ticklabel(visible=False)
axins5.coords['glat'].set_ticks_visible(False)
axins5.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_brick.png", bbox_inches='tight', dpi=200)
import regions
from astropy import coordinates
from astropy import units as u, constants
import astropy.visualization.wcsaxes
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes, inset_axes, mark_inset
from astropy.io import fits
from astropy.wcs import WCS
from astropy.visualization import simple_norm
import pylab as pl
import pylab as plt

aces12m = fits.open('/orange/adamginsburg/ACES/mosaics/continuum/12m_continuum_mosaic.fits')
aces12mwcs = WCS(aces12m[0].header)
aces12m[0].data[aces12m[0].data < -0.0005] = 0

fig = plt.figure(figsize=(10,5), frameon=False)
ax = plt.subplot(1,1,1, projection=aces12mwcs)


ax.coords['glat'].set_ticklabel(visible=False)
ax.coords['glon'].set_ticklabel(visible=False)
ax.coords['glat'].set_ticks_visible(False)
ax.coords['glon'].set_ticks_visible(False)
ax.axis('off')

sgrb2m = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6672*u.deg,  -00.03640*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2n = regions.CircleSkyRegion(
    coordinates.SkyCoord(000.6773*u.deg,  -00.029*u.deg, frame='galactic'),
    radius=25*u.arcsec)
sgrb2ds = regions.RectangleSkyRegion(
    coordinates.SkyCoord('17:47:21.0856811259 -28:24:48.9796510714', frame='icrs', unit=(u.h, u.deg)).galactic,
    width=96*u.arcsec,
    height=2.77*u.arcmin,
    angle=58*u.deg)
brick = regions.RectangleSkyRegion(
    coordinates.SkyCoord(0.2499811648, 0.0187129377, frame='galactic', unit=(u.deg, u.deg)).fk5,
    width=2.46*u.arcmin,
    height=5.9*u.arcmin,
    angle=58*u.deg)
sgrb2m.visual['edgecolor'] = 'r'
sgrb2n.visual['edgecolor'] = 'r'
sgrb2ds.visual['edgecolor'] = 'r'
brick.visual['edgecolor'] = 'r'

psgrb2m = sgrb2m.to_pixel(ax.wcs)
point_sgrb2m = psgrb2m.plot(ax=ax)
msgrb2m = psgrb2m.to_mask()
slcs_sgrb2m,_ = msgrb2m.get_overlap_slices(aces12m[0].data.shape)

psgrb2n = sgrb2n.to_pixel(ax.wcs)
psgrb2n.visual['edgecolor'] = 'r'
point_sgrb2n = psgrb2n.plot(ax=ax)
msgrb2n = psgrb2n.to_mask()
slcs_sgrb2n,_ = msgrb2n.get_overlap_slices(aces12m[0].data.shape)

merge = psgrb2n & psgrb2m
merge_mask = merge.to_mask()
slcs_merge,_ = merge_mask.get_overlap_slices(aces12m[0].data.shape)

dsmask = sgrb2ds.to_pixel(ax.wcs).to_mask()
brick_mask = brick.to_pixel(ax.wcs).to_mask()

# moved down here for debugging...
ax.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.05,),
             cmap='gray',
            )



bbox = [0.01, 0, 0.2, 1.05]

axins1 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox,
                           bbox_transform=fig.transFigure,
                           axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                           axes_kwargs=dict(wcs=ax.wcs)
                          )
axins1.axis('off')
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2m.bbox.extent)
mark1 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2m_in = sgrb2m.to_pixel(axins1.wcs).plot(ax=axins1)
axins1.coords['glat'].set_ticklabel(visible=False)
axins1.coords['glon'].set_ticklabel(visible=False)
axins1.coords['glat'].set_ticks_visible(False)
axins1.coords['glon'].set_ticks_visible(False)


pl.savefig("aces_mark_sgrb2m.png", bbox_inches='tight', dpi=200)

point_sgrb2m.set_visible(False)
point_sgrb2m_in.set_visible(False)
#axins1.set_visible(False)
for pp in mark1:
    pp.set_visible(False)


#axins2 = zoomed_inset_axes(ax, 30, loc='upper left', bbox_to_anchor=bbox, bbox_transform=fig.transFigure,
#                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
#                          axes_kwargs=dict(wcs=ax.wcs))
axins1.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins1.axis(msgrb2n.bbox.extent)
mark2 = mark_inset(ax, axins1, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins1.wcs).plot(ax=axins1)
#axins2.coords['glat'].set_ticklabel(visible=False)
#axins2.coords['glon'].set_ticklabel(visible=False)
#axins2.coords['glat'].set_ticks_visible(False)
#axins2.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2n.png", bbox_inches='tight', dpi=200)

point_sgrb2n.set_visible(False)
point_sgrb2n_in.set_visible(False)
for pp in mark2:
    pp.set_visible(False)
axins1.set_visible(False)


axins3 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins3.axis('off')
axins3.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins3.axis(merge_mask.bbox.extent)
mark3 = mark_inset(ax, axins3, loc1=1, loc2=3, edgecolor='r')
point_sgrb2n_in = sgrb2n.to_pixel(axins3.wcs).plot(ax=axins3)
point_sgrb2m_in = sgrb2m.to_pixel(axins3.wcs).plot(ax=axins3)
axins3.coords['glat'].set_ticklabel(visible=False)
axins3.coords['glon'].set_ticklabel(visible=False)
axins3.coords['glat'].set_ticks_visible(False)
axins3.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2mANDn.png", bbox_inches='tight', dpi=200)




point_sgrb2n.set_visible(False)
point_sgrb2m_in.set_visible(False)
for pp in mark3:
    pp.set_visible(False)
axins3.set_visible(False)


axins4 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins4.axis('off')
axins4.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins4.axis(dsmask.bbox.extent)
mark4 = mark_inset(ax, axins4, loc1=1, loc2=3, edgecolor='r')
point_sgrb2ds_in = sgrb2ds.to_pixel(axins4.wcs).plot(ax=axins4)
axins4.coords['glat'].set_ticklabel(visible=False)
axins4.coords['glon'].set_ticklabel(visible=False)
axins4.coords['glat'].set_ticks_visible(False)
axins4.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_sgrb2ds.png", bbox_inches='tight', dpi=200)




point_sgrb2ds_in.set_visible(False)
for pp in mark4:
    pp.set_visible(False)
axins4.set_visible(False)


axins5 = zoomed_inset_axes(ax, 15, loc='upper left',
                           bbox_to_anchor=[0.05, 0, 0.2, 1], bbox_transform=fig.transFigure,
                          axes_class=astropy.visualization.wcsaxes.core.WCSAxes,
                          axes_kwargs=dict(wcs=ax.wcs))
axins5.axis('off')
axins5.imshow(aces12m[0].data,
             norm=simple_norm(aces12m[0].data, stretch='log',
                              min_percent=None, max_percent=None,
                              min_cut=-0.0005, max_cut=0.5,),
             cmap='gray'
            )
axins5.axis(brick_mask.bbox.extent)
mark5 = mark_inset(ax, axins5, loc1=1, loc2=3, edgecolor='r')
point_brick_in = brick.to_pixel(axins4.wcs).plot(ax=axins5)
axins5.coords['glat'].set_ticklabel(visible=False)
axins5.coords['glon'].set_ticklabel(visible=False)
axins5.coords['glat'].set_ticks_visible(False)
axins5.coords['glon'].set_ticks_visible(False)

pl.savefig("aces_mark_brick.png", bbox_inches='tight', dpi=200)
