add vec_scale capabilities to overplot
This commit is contained in:
@@ -728,7 +728,7 @@ class overplot_pol(align_maps):
|
|||||||
Class to overplot maps from different observations.
|
Class to overplot maps from different observations.
|
||||||
Inherit from class align_maps in order to get the same WCS on both maps.
|
Inherit from class align_maps in order to get the same WCS on both maps.
|
||||||
"""
|
"""
|
||||||
def overplot(self, SNRp_cut=3., SNRi_cut=30., savename=None, **kwargs):
|
def overplot(self, SNRp_cut=3., SNRi_cut=30., vec_scale=2., savename=None, **kwargs):
|
||||||
self.Stokes_UV = self.map
|
self.Stokes_UV = self.map
|
||||||
self.wcs_UV = self.wcs_map
|
self.wcs_UV = self.wcs_map
|
||||||
#Get Data
|
#Get Data
|
||||||
@@ -774,7 +774,7 @@ class overplot_pol(align_maps):
|
|||||||
step_vec = 1
|
step_vec = 1
|
||||||
X, Y = np.meshgrid(np.arange(stkI.data.shape[1]), np.arange(stkI.data.shape[0]))
|
X, Y = np.meshgrid(np.arange(stkI.data.shape[1]), np.arange(stkI.data.shape[0]))
|
||||||
U, V = pol.data*np.cos(np.pi/2.+pang.data*np.pi/180.), pol.data*np.sin(np.pi/2.+pang.data*np.pi/180.)
|
U, V = pol.data*np.cos(np.pi/2.+pang.data*np.pi/180.), pol.data*np.sin(np.pi/2.+pang.data*np.pi/180.)
|
||||||
Q = self.ax.quiver(X[::step_vec,::step_vec],Y[::step_vec,::step_vec],U[::step_vec,::step_vec],V[::step_vec,::step_vec],units='xy',angles='uv',scale=0.5,scale_units='xy',pivot='mid',headwidth=0.,headlength=0.,headaxislength=0.,width=0.1,color='w')
|
Q = self.ax.quiver(X[::step_vec,::step_vec],Y[::step_vec,::step_vec],U[::step_vec,::step_vec],V[::step_vec,::step_vec],units='xy',angles='uv',scale=1./vec_scale,scale_units='xy',pivot='mid',headwidth=0.,headlength=0.,headaxislength=0.,width=0.1,linewidth=0.5,color='white',edgecolor='black')
|
||||||
|
|
||||||
#Display "other" intensity map
|
#Display "other" intensity map
|
||||||
vmin, vmax = 0., np.max(other_data[other_data > 0.]*other_convert)
|
vmin, vmax = 0., np.max(other_data[other_data > 0.]*other_convert)
|
||||||
@@ -807,10 +807,10 @@ class overplot_pol(align_maps):
|
|||||||
|
|
||||||
self.fig2.canvas.draw()
|
self.fig2.canvas.draw()
|
||||||
|
|
||||||
def plot(self, SNRp_cut=3., SNRi_cut=30., savename=None, **kwargs) -> None:
|
def plot(self, SNRp_cut=3., SNRi_cut=30., vec_scale=2., savename=None, **kwargs) -> None:
|
||||||
while not self.aligned:
|
while not self.aligned:
|
||||||
self.align()
|
self.align()
|
||||||
self.overplot(SNRp_cut=SNRp_cut, SNRi_cut=SNRi_cut, savename=savename, **kwargs)
|
self.overplot(SNRp_cut=SNRp_cut, SNRi_cut=SNRi_cut, vec_scale=vec_scale, savename=savename, **kwargs)
|
||||||
plt.show(block=True)
|
plt.show(block=True)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -6,44 +6,44 @@ from copy import deepcopy
|
|||||||
from lib.plots import overplot_radio, overplot_pol, align_pol
|
from lib.plots import overplot_radio, overplot_pol, align_pol
|
||||||
from matplotlib.colors import LogNorm
|
from matplotlib.colors import LogNorm
|
||||||
|
|
||||||
Stokes_UV = fits.open("./data/IC5063/5918/IC5063_FOC_c_020arcsec.fits")
|
Stokes_UV = fits.open("./data/IC5063/5918/IC5063_FOC_b0.10arcsec_c0.20arcsec.fits")
|
||||||
Stokes_18GHz = fits.open("./data/IC5063/radio/IC5063_18GHz.fits")
|
#Stokes_18GHz = fits.open("./data/IC5063/radio/IC5063_18GHz.fits")
|
||||||
Stokes_24GHz = fits.open("./data/IC5063/radio/IC5063_24GHz.fits")
|
#Stokes_24GHz = fits.open("./data/IC5063/radio/IC5063_24GHz.fits")
|
||||||
Stokes_103GHz = fits.open("./data/IC5063/radio/IC5063_103GHz.fits")
|
#Stokes_103GHz = fits.open("./data/IC5063/radio/IC5063_103GHz.fits")
|
||||||
Stokes_229GHz = fits.open("./data/IC5063/radio/IC5063_229GHz.fits")
|
#Stokes_229GHz = fits.open("./data/IC5063/radio/IC5063_229GHz.fits")
|
||||||
Stokes_357GHz = fits.open("./data/IC5063/radio/IC5063_357GHz.fits")
|
#Stokes_357GHz = fits.open("./data/IC5063/radio/IC5063_357GHz.fits")
|
||||||
#Stokes_S2 = fits.open("./data/IC5063/POLARIZATION_COMPARISON/S2_rot_crop.fits")
|
#Stokes_S2 = fits.open("./data/IC5063/POLARIZATION_COMPARISON/S2_rot_crop.fits")
|
||||||
Stokes_IR = fits.open("./data/IC5063/IR/u2e65g01t_c0f_rot.fits")
|
Stokes_IR = fits.open("./data/IC5063/IR/u2e65g01t_c0f_rot.fits")
|
||||||
|
|
||||||
levelsMorganti = np.array([1.,2.,3.,8.,16.,32.,64.,128.])
|
levelsMorganti = np.array([1.,2.,3.,8.,16.,32.,64.,128.])
|
||||||
|
|
||||||
#levels18GHz = np.array([0.6, 1.5, 3, 6, 12, 24, 48, 96])/100.*Stokes_18GHz[0].data.max()
|
#levels18GHz = np.array([0.6, 1.5, 3, 6, 12, 24, 48, 96])/100.*Stokes_18GHz[0].data.max()
|
||||||
levels18GHz = levelsMorganti*0.28*1e-3
|
#levels18GHz = levelsMorganti*0.28*1e-3
|
||||||
A = overplot_radio(Stokes_UV, Stokes_18GHz)
|
#A = overplot_radio(Stokes_UV, Stokes_18GHz)
|
||||||
A.plot(levels=levels18GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/18GHz_overplot_forced.png')
|
#A.plot(levels=levels18GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/18GHz_overplot_forced.png')
|
||||||
|
#
|
||||||
#levels24GHz = np.array([1.,1.5, 3, 6, 12, 24, 48, 96])/100.*Stokes_24GHz[0].data.max()
|
##levels24GHz = np.array([1.,1.5, 3, 6, 12, 24, 48, 96])/100.*Stokes_24GHz[0].data.max()
|
||||||
levels24GHz = levelsMorganti*0.46*1e-3
|
#levels24GHz = levelsMorganti*0.46*1e-3
|
||||||
B = overplot_radio(Stokes_UV, Stokes_24GHz)
|
#B = overplot_radio(Stokes_UV, Stokes_24GHz)
|
||||||
B.plot(levels=levels24GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/24GHz_overplot_forced.png')
|
#B.plot(levels=levels24GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/24GHz_overplot_forced.png')
|
||||||
|
#
|
||||||
levels103GHz = np.linspace(1,99,11)/100.*np.max(deepcopy(Stokes_103GHz[0].data[Stokes_103GHz[0].data > 0.]))
|
#levels103GHz = np.linspace(1,99,11)/100.*np.max(deepcopy(Stokes_103GHz[0].data[Stokes_103GHz[0].data > 0.]))
|
||||||
C = overplot_radio(Stokes_UV, Stokes_103GHz)
|
#C = overplot_radio(Stokes_UV, Stokes_103GHz)
|
||||||
C.plot(levels=levels103GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/103GHz_overplot_forced.png')
|
#C.plot(levels=levels103GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/103GHz_overplot_forced.png')
|
||||||
|
#
|
||||||
levels229GHz = np.linspace(1,99,11)/100.*np.max(deepcopy(Stokes_229GHz[0].data[Stokes_229GHz[0].data > 0.]))
|
#levels229GHz = np.linspace(1,99,11)/100.*np.max(deepcopy(Stokes_229GHz[0].data[Stokes_229GHz[0].data > 0.]))
|
||||||
D = overplot_radio(Stokes_UV, Stokes_229GHz)
|
#D = overplot_radio(Stokes_UV, Stokes_229GHz)
|
||||||
D.plot(levels=levels229GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/229GHz_overplot_forced.png')
|
#D.plot(levels=levels229GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/229GHz_overplot_forced.png')
|
||||||
|
#
|
||||||
levels357GHz = np.linspace(1,99,11)/100.*np.max(deepcopy(Stokes_357GHz[0].data[Stokes_357GHz[0].data > 0.]))
|
#levels357GHz = np.linspace(1,99,11)/100.*np.max(deepcopy(Stokes_357GHz[0].data[Stokes_357GHz[0].data > 0.]))
|
||||||
E = overplot_radio(Stokes_UV, Stokes_357GHz)
|
#E = overplot_radio(Stokes_UV, Stokes_357GHz)
|
||||||
E.plot(levels=levels357GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/357GHz_overplot_forced.png')
|
#E.plot(levels=levels357GHz, SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/357GHz_overplot_forced.png')
|
||||||
|
#
|
||||||
#F = overplot_pol(Stokes_UV, Stokes_S2)
|
#F = overplot_pol(Stokes_UV, Stokes_S2)
|
||||||
#F.plot(SNRp_cut=3.0, SNRi_cut=80.0, savename='./plots/IC5063/S2_overplot_forced.png', norm=LogNorm(vmin=5e-20,vmax=5e-18))
|
#F.plot(SNRp_cut=3.0, SNRi_cut=80.0, savename='./plots/IC5063/S2_overplot_forced.png', norm=LogNorm(vmin=5e-20,vmax=5e-18))
|
||||||
|
|
||||||
G = overplot_pol(Stokes_UV, Stokes_IR, cmap='inferno')
|
G = overplot_pol(Stokes_UV, Stokes_IR, cmap='inferno')
|
||||||
G.plot(SNRp_cut=1.0, SNRi_cut=10.0, savename='./plots/IC5063/IR_overplot_forced.png', norm=LogNorm(vmin=1e-17,vmax=5e-15), cmap='inferno_r')
|
G.plot(SNRp_cut=1.0, SNRi_cut=10.0, vec_scale=3., savename='./plots/IC5063/IR_overplot_forced.png', norm=LogNorm(vmin=1e-17,vmax=5e-15), cmap='inferno_r')
|
||||||
|
|
||||||
#data_folder1 = "./data/M87/POS1/"
|
#data_folder1 = "./data/M87/POS1/"
|
||||||
#plots_folder1 = "./plots/M87/POS1/"
|
#plots_folder1 = "./plots/M87/POS1/"
|
||||||
|
|||||||
Reference in New Issue
Block a user