adjustements to pdf static output
This commit is contained in:
@@ -60,7 +60,10 @@ from mpl_toolkits.axes_grid1.anchored_artists import (
|
||||
)
|
||||
from scipy.ndimage import zoom as sc_zoom
|
||||
|
||||
from .utils import PCconf, princ_angle, rot2D, sci_not
|
||||
try:
|
||||
from .utils import PCconf, princ_angle, rot2D, sci_not
|
||||
except ImportError:
|
||||
from utils import PCconf, princ_angle, rot2D, sci_not
|
||||
|
||||
|
||||
def plot_obs(data_array, headers, rectangle=None, savename=None, plots_folder="", **kwargs):
|
||||
@@ -205,7 +208,6 @@ def plot_Stokes(Stokes, savename=None, plots_folder=""):
|
||||
else:
|
||||
savename = savename[:-4] + "_IQU" + savename[-4:]
|
||||
fig.savefig(path_join(plots_folder, savename), bbox_inches="tight", dpi=150, facecolor="None")
|
||||
plt.show()
|
||||
return 0
|
||||
|
||||
|
||||
@@ -562,7 +564,7 @@ def polarization_map(
|
||||
if savename is not None:
|
||||
if savename[-4:] not in [".png", ".jpg", ".pdf"]:
|
||||
savename += ".pdf"
|
||||
fig.savefig(path_join(plots_folder, savename), bbox_inches="tight", dpi=150, facecolor="None")
|
||||
fig.savefig(path_join(plots_folder, savename), bbox_inches="tight", dpi=300, facecolor="None")
|
||||
|
||||
return fig, ax
|
||||
|
||||
@@ -3353,132 +3355,149 @@ if __name__ == "__main__":
|
||||
parser.add_argument(
|
||||
"-pdf", "--static-pdf", metavar="static_pdf", required=False, help="Whether the analysis tool or the static pdfs should be outputed", default=None
|
||||
)
|
||||
parser.add_argument(
|
||||
"-t", "--type", metavar="type", required=False, help="Type of plot to be be outputed", default=None
|
||||
)
|
||||
args = parser.parse_args()
|
||||
|
||||
if args.file is not None:
|
||||
Stokes_UV = fits.open(args.file, mode="readonly")
|
||||
if args.static_pdf is not None:
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"]]),
|
||||
plots_folder=args.static_pdf,
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "I"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Intensity",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "P_flux"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_Flux",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "P"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_deg",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "PA"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_ang",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "I_err"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="I_err",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "P_err"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_deg_err",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "SNRi"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="SNRi",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut if args.p_cut >= 1.0 else 3.0,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "SNRp"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="SNRp",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.p_cut if args.p_cut < 1.0 else 0.99,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "confP"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="confp",
|
||||
)
|
||||
if args.type is not None:
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], args.type]),
|
||||
plots_folder=args.static_pdf,
|
||||
display=args.type,
|
||||
)
|
||||
else:
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"]]),
|
||||
plots_folder=args.static_pdf,
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "I"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Intensity",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "P_flux"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_Flux",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "P"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_deg",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "PA"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_ang",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "I_err"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="I_err",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "P_err"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="Pol_deg_err",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "SNRi"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="SNRi",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut if args.pcut >= 1.0 else 3.0,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "SNRp"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="SNRp",
|
||||
)
|
||||
polarization_map(
|
||||
Stokes_UV,
|
||||
Stokes_UV["DATA_MASK"].data.astype(bool),
|
||||
P_cut=args.pcut if args.pcut < 1.0 else 0.99,
|
||||
SNRi_cut=args.snri,
|
||||
flux_lim=args.lim,
|
||||
step_vec=args.step_vec,
|
||||
scale_vec=args.scale_vec,
|
||||
savename="_".join([Stokes_UV[0].header["FILENAME"], "confP"]),
|
||||
plots_folder=args.static_pdf,
|
||||
display="confp",
|
||||
)
|
||||
else:
|
||||
pol_map(Stokes_UV, P_cut=args.p_cut, SNRi_cut=args.snri, step_vec=args.step_vec, scale_vec=args.scale_vec, flux_lim=args.lim, pa_err=args.pang_err)
|
||||
pol_map(Stokes_UV, P_cut=args.pcut, SNRi_cut=args.snri, step_vec=args.step_vec, scale_vec=args.scale_vec, flux_lim=args.lim, pa_err=args.pang_err, selection=args.type)
|
||||
else:
|
||||
print(
|
||||
"python3 plots.py -f <path_to_reduced_fits> -p <P_cut> -i <SNRi_cut> -st <step_vec> -sc <scale_vec> -l <flux_lim> -pa <pa_err> --pdf <static_pdf>"
|
||||
|
||||
@@ -40,16 +40,16 @@ def main(infile, target=None, output_dir=None):
|
||||
if target is None:
|
||||
target = Stokes[0].header["TARGNAME"]
|
||||
|
||||
fig = figure(figsize=(8,9),layout="constrained")
|
||||
fig = figure(figsize=(8,8),layout="constrained")
|
||||
fig, ax = polarization_map(Stokes, P_cut=0.99, step_vec=2, scale_vec=5, display="i", fig=fig)
|
||||
|
||||
ax.plot(*Stokescenter, marker="+", color="gray", label="Best confidence for center: {0}".format(Stokespos.to_string("hmsdms")))
|
||||
confcentcont = ax.contour(Stokescentconf, [0.01], colors="gray")
|
||||
confcont = ax.contour(Stokesconf, [0.99], colors="r")
|
||||
confcentcont = ax.contour(Stokescentconf, [0.001], colors="gray")
|
||||
confcont = ax.contour(Stokesconf, [0.9905], colors="r")
|
||||
snr3cont = ax.contour(Stokessnr, [3.0], colors="b", linestyles="dashed")
|
||||
snr4cont = ax.contour(Stokessnr, [4.0], colors="b")
|
||||
handles, labels = ax.get_legend_handles_labels()
|
||||
labels.append(r"Center $Conf_{99\%}$ contour")
|
||||
labels.append(r"Center $Conf_{99.9\%}$ contour")
|
||||
handles.append(Rectangle((0, 0), 1, 1, fill=False, ec=confcentcont.get_edgecolor()[0]))
|
||||
labels.append(r"Polarization $Conf_{99\%}$ contour")
|
||||
handles.append(Rectangle((0, 0), 1, 1, fill=False, ec=confcont.get_edgecolor()[0]))
|
||||
@@ -61,7 +61,7 @@ def main(infile, target=None, output_dir=None):
|
||||
|
||||
if output_dir is not None:
|
||||
filename = pathjoin(output_dir, "%s_center.pdf" % target)
|
||||
fig.savefig(filename, dpi=150, facecolor="None")
|
||||
fig.savefig(filename, dpi=300, facecolor="None")
|
||||
output.append(filename)
|
||||
show()
|
||||
return output
|
||||
|
||||
@@ -10,7 +10,7 @@ from astropy.io import fits
|
||||
from lib.plots import overplot_chandra, overplot_pol
|
||||
from matplotlib.colors import LogNorm
|
||||
|
||||
Stokes_UV = fits.open("./data/MRK463E/5960/MRK463E_FOC_b0.05arcsec_c0.07arcsec.fits")
|
||||
Stokes_UV = fits.open("./data/MRK463E/5960/MRK463E_FOC_b0.05arcsec_c0.10arcsec.fits")
|
||||
Stokes_IR = fits.open("./data/MRK463E/WFPC2/IR_rot_crop.fits")
|
||||
Stokes_Xr = fits.open("./data/MRK463E/Chandra/X_ray_crop.fits")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user