Example #1
0
def mc_plot(result_arr, mc_arr, img_name):

    img = Image_Plot(fig_x=6, fig_y=4, xpad=0.25, ypad=0.2)
    img.subplots(1, 2)

    scale = 1000

    img.axs[0][0].errorbar(result_arr[0],
                           result_arr[1],
                           result_arr[2],
                           marker="s",
                           fmt=" ",
                           label="g1",
                           capsize=img.cap_size)
    img.axs[0][0].errorbar(result_arr[3],
                           result_arr[4],
                           result_arr[5],
                           marker="s",
                           fmt=" ",
                           label="g2",
                           capsize=img.cap_size)
    img.axs[0][1].errorbar(result_arr[0],
                           scale * (result_arr[1] - result_arr[0]),
                           scale * result_arr[2],
                           marker="s",
                           fmt=" ",
                           label="g1",
                           capsize=img.cap_size)
    img.axs[0][1].errorbar(result_arr[3],
                           scale * (result_arr[4] - result_arr[3]),
                           scale * result_arr[5],
                           marker="s",
                           fmt=" ",
                           label="g2",
                           capsize=img.cap_size)

    mc_str = "Mean\n$m_1 = %.5f (%.5f)$\n$c_1 = %.5f (%.5f)$\n$m_2 = %.5f (%.5f)$\n$c_2 = %.5f (%.5f)$" \
             % (mc_arr[0, 0], mc_arr[0, 1], mc_arr[0, 2], mc_arr[0, 3],
                mc_arr[1, 0], mc_arr[1, 1], mc_arr[1, 2], mc_arr[1, 3])
    img.axs_text(0, 0, 0.8, 0.05, mc_str, text_fontsize=img.legend_size)

    img.set_label(0, 0, 0, "EST g")
    img.set_label(0, 1, 1, "$10^3 (\hat{g} - g_{true})$")
    img.axs[0][0].plot([-0.1, 0.1], [-0.1, 0.1],
                       ls="dashed",
                       c="grey",
                       alpha=0.5)
    img.axs[0][0].set_ylim(-0.05, 0.05)
    img.axs[0][1].set_ylim(-0.1, 0.1)
    for i in range(2):
        img.set_label(0, i, 1, "TRUE g")
        img.axs[0][i].legend(fontsize=img.legend_size, loc="lower right")
        img.axs[0][i].set_xlim(-0.05, 0.05)
    img.save_img(img_name)
    img.close_img()
Example #2
0
def plot_gf_pix(x, y, ichip, gf1, gf2, gf, gf1_scale, gf2_scale,gf_scale,dot_size=1,pic_path=None):

    chip_row, chip_col = numpy.divmod(ichip, 9)

    x = x + chip_col * 2112
    y = y + chip_row * 4644

    img = Image_Plot(xpad=0.2,ypad=0.1)
    img.subplots(1, 3)
    color_cm = 'bwr'

    norm = plt.Normalize(vmin=numpy.min(gf1_scale[0]), vmax=numpy.max(gf1_scale[1]))
    cmap = plt.get_cmap(color_cm)
    cl = cmap(norm(gf1))
    fig = img.axs[0][0].scatter(x, y, color=cl, s=dot_size)
    sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
    sm._A = []
    img.figure.colorbar(sm, ax=img.axs[0][0])

    norm = plt.Normalize(vmin=numpy.min(gf2_scale[0]), vmax=numpy.max(gf2_scale[1]))
    cmap = plt.get_cmap(color_cm)
    cl = cmap(norm(gf2))
    fig = img.axs[0][1].scatter(x, y, color=cl, s=dot_size)
    sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
    sm._A = []
    img.figure.colorbar(sm, ax=img.axs[0][1])

    norm = plt.Normalize(vmin=numpy.min(gf_scale[0]), vmax=numpy.max(gf_scale[1]))
    cmap = plt.get_cmap(color_cm)
    cl = cmap(norm(gf))
    fig = img.axs[0][2].scatter(x, y, color=cl, s=dot_size)
    sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
    sm._A = []
    img.figure.colorbar(sm, ax=img.axs[0][2])

    for i in range(3):
        img.axis_sci_ticklabel(0,i,0)
        img.axis_sci_ticklabel(0,i,1)
        img.set_label(0,i,0,"y")
        img.set_label(0,i,1,"x")
    if pic_path:
        img.save_img(pic_path)
    # img.show_img()
    img.close_img()
Example #3
0
def plot_label(x, y, cent_xy, cent_label, title, show=None, pic_path=None):
    ncent = cent_label.shape[0]
    img = Image_Plot()
    img.subplots(1, 1)
    for i in range(ncent):
        img.axs[0][0].scatter(cent_xy[0][i],
                              cent_xy[1][i],
                              color="C%d" % i,
                              marker="*",
                              s=80)
        idx = cent_label[i] == 1
        img.axs[0][0].scatter(x[idx],
                              y[idx],
                              edgecolors="C%d" % i,
                              color="none",
                              label="%d, %d" % (i, idx.sum()),
                              s=5)
    img.axs[0][0].set_title(title)
    img.axs[0][0].legend()
    if pic_path:
        img.save_img(pic_path)
    if show:
        img.show_img()
    img.close_img()
Example #4
0
for j in range(5):
    total_path = "E:/data/new_pdf/galsim_sample/imgs_%d" % j
    data_path = total_path + "/chisq"

    h5f = h5py.File(data_path + "/shear.hdf5", "r")
    g1 = h5f["/g1"][()]
    g2 = h5f["/g2"][()]
    h5f.close()
    for n in nm:
        for i in range(10):
            h5f = h5py.File(data_path + "/chisq_%d_%s.hdf5" % (i, n), "r")
            chisq1 = h5f["/chisq1"][()]
            chisq2 = h5f["/chisq2"][()]
            shear_h = h5f["/shear"][()]
            h5f.close()
            print(chisq1.min(), chisq2.min())
            idx1 = chisq1 < 10000
            idx2 = chisq2 < 10000
            img = Image_Plot(xpad=0.15, ypad=0.15)
            img.subplots(1, 1)
            img.axs[0][0].plot(shear_h[idx1], chisq1[idx1], label="g1")
            img.axs[0][0].plot(shear_h[idx2], chisq2[idx2], label="g2")
            img.axs[0][0].set_xlim(-0.11, 0.11)
            img.axs[0][0].legend()
            img.axs[0][0].set_title("g1=%.4f, g2=%.4f" % (g1[i], g2[i]))
            img.set_label(0, 0, 0, "$\chi^2$")
            img.set_label(0, 0, 1, "$g$")
            img.save_img(data_path + "/chisq_%s_%d.png" % (n, i))
            # img.show_img()
            img.close_img()
Example #5
0
print(chisqs.min(), chisqs.max())
omega_cm_num = omega_cm_bin.shape[0]
omega_bm_num = omega_bm_bin.shape[0]
sigma8_num = sigma8_bin.shape[0]

my, mx = numpy.zeros((omega_cm_num, sigma8_num)), numpy.zeros(
    (omega_cm_num, sigma8_num))
for i in range(omega_cm_num):
    my[i] = omega_cm_bin[i]
for j in range(sigma8_num):
    mx[:, j] = sigma8_bin[j]

img = Image_Plot(fig_x=4, fig_y=3, xpad=0.25, ypad=0.28)
img.subplots(2, 5)
for i in range(2):
    for j in range(5):
        tag = i * 2 + j

        idx = chisqs[tag] > -200
        print(idx.sum())
        x = mx[idx].flatten()
        y = my[idx].flatten()
        z = chisqs[tag][idx].flatten()

        img.scatter_pts(i, j, x, y, z, color_map="jet", pts_size=18)

        img.axs[i][j].set_title("$\Omega_b=%.3f$" % omega_bm_bin[tag])
        img.set_label(i, j, 0, "$\Omega_m$")
        img.set_label(i, j, 1, "$\sigma_8$")
img.save_img("%s/%s.png" % (data_path, chisa_name))
img.show_img()
Example #6
0
            img.figure.colorbar(fig, ax=img.axs[i][j])
        else:
            num_dens = numpy.histogram2d(gal_coord[0], gal_coord[1],
                                         [ra_bin, dec_bin])[0]
            fig = img.axs[i][j].imshow(num_dens, cmap="jet")
            img.figure.colorbar(fig, ax=img.axs[i][j])

        img.set_label(i, j, 0, "DEC. [arcmin]")
        img.set_label(i, j, 1, "R.A. [arcmin]")
        img.axs[i][j].set_yticks([int(nx - k * nx / 5) for k in range(6)])
        img.axs[i][j].set_yticklabels(
            ["%.1f" % (k * nx / 5. * pixel_scale) for k in range(6)])
        img.axs[i][j].set_xticks([int(k * ny / 5) for k in range(6)])
        img.axs[i][j].set_xticklabels(
            ["%.1f" % (k * ny / 5. * pixel_scale) for k in range(6)])
img.save_img(parent_path + "pic/shear_field.png")
img.show_img()

# the galactic parameters
h5f = h5py.File(parent_path + "param.hdf5", "w")

h5f["/FIELD_g"] = g[0]
h5f["/FIELD_g1"] = g[1]
h5f["/FIELD_g2"] = g[2]

ra = gal_coord[0]
dec = gal_coord[1]
print(ra.min(), ra.max(), ra.mean())
print(dec.min(), dec.max(), dec.mean())

h5f["/ra"] = ra
    xs = img.axs[2 * i + 1][0].set_xlim()
    img.axs[2 * i + 1][0].plot([xs[0], xs[1]], [1, 1],
                               ls="--",
                               alpha=0.4,
                               c="k")
    img.axs[2 * i + 1][0].plot([xs[0], xs[1]], [0, 0],
                               ls="--",
                               alpha=0.4,
                               c="k")
    img.axs[2 * i + 1][0].plot([xs[0], xs[1]], [-1, -1],
                               ls="--",
                               alpha=0.4,
                               c="k")

labels = [
    "noise_free\n$10^2m_{1/2}$", "noise_free\n$10^4c_{1/2}$",
    "noisy\n$10^2m_{1/2}$", "noisy\n$10^4c_{1/2}$"
]
for i in range(4):
    img.set_label(i, 0, 0, labels[i], fontsize=img.xy_lb_size - 2)

psf_scale = [
    "$r_d=1.6$", "$r_d=2$", "$r_d=2.5$", "$r_d=3$", "$r_d=4$", "$r_d=6$",
    "$r_d=7$"
]
# img.axs[3][0].set_xticks(x_tick_pos)
# img.axs[3][0].set_xticklabels(psf_scale)
img.set_ticklabel_str(3, 0, 1, x_tick_pos, psf_scale)
img.save_img(parent_path + "/result.png")
Example #8
0
    mc2s[i] = mc2
    print(mc1)
    print(mc2)
img.axs[0][0].errorbar(range(4),
                       mc1s[:, 0],
                       mc1s[:, 1],
                       label="PDF m1-iter",
                       marker="s",
                       capsize=img.cap_size)
img.axs[0][0].errorbar(range(4),
                       mc2s[:, 0],
                       mc2s[:, 1],
                       label="PDF m2-iter",
                       marker="s",
                       capsize=img.cap_size)
img.axs[0][1].errorbar(range(4),
                       mc1s[:, 2],
                       mc1s[:, 3],
                       label="PDF c1-iter",
                       marker="s",
                       capsize=img.cap_size)
img.axs[0][1].errorbar(range(4),
                       mc2s[:, 2],
                       mc2s[:, 3],
                       label="PDF c2-iter",
                       marker="s",
                       capsize=img.cap_size)
img.axs[0][0].legend(ncol=3)
img.axs[0][1].legend(ncol=3)
img.save_img(data_path + "/noise_free.png")
img.show_img()
Example #9
0
import h5py
import numpy
from plot_tool import Image_Plot

src_path = argv[1]

ra_bin = [1000, 5000, 10000, 15000, 30000]
labels = []
sub_num = numpy.array([75, 34, 56, 35], dtype=numpy.intc)
img = Image_Plot(fig_x=8, fig_y=6)
img.subplots(2, 2)
for i in range(2):
    for j in range(2):
        tag = int(i * 2 + j)

        h5f = h5py.File(src_path + "/group_predict_%d.hdf5" % tag, "r")
        group_label = h5f["/data"][()]
        ra_dec = h5f["/ra_dec"][()]
        h5f.close()

        for k in range(sub_num[tag]):
            idx = group_label == k
            print(k, idx.sum())
        # group_label += sub_num[:tag].sum()
        print(tag, group_label.min(), group_label.max(), sub_num[:tag].sum())
        print("\n")
        img.pts_scatter(i, j, ra_dec[:, 0], ra_dec[:, 1], group_label,
                        [0, sub_num[tag]])
img.save_img("kmeans_new.png")
img.close_img()
Example #10
0
bin_num = 5000
img = Image_Plot()
img.subplots(2,3)

for i in range(6):
    m,n = divmod(i,3)

    img.axs[m][n].hist(estimator[i]/scale,bin_num)

    fit = tool_box.gaussnosie_fit(estimator[i]/scale,bin_num)
    img.axs[m][n].plot(fit[0],fit[1],c="C1",ls="--",linewidth=1.5)

    print("plot %s"%est[i])
    ys = img.axs[m][n].set_ylim()
    img.axs[m][n].plot([0,0],[ys[0],ys[1]],ls="--",alpha=0.5,c="k",linewidth=1)
    print(fit[4])
    text_str = "%s\n%.4f\n%.4f\n%.4f"%(est[i],fit[4][0],fit[4][1],fit[4][2])
    img.axs_text(m,n,0.8,0.1,text_str)

img.save_img(pic_path)

img = Image_Plot()
img.subplots(2,3)

for i in range(6):
    m,n = divmod(i,3)

    fq.find_shear(estimator[i],1,20,left=-3000, right=3000,fit_num=40,fig_ax=img.axs[m][n])

img.save_img(chi_pic_path)
scale = [24.2423, 23.4742]
line_labels = ["$30%$ cutoff", "$60%$ cutoff"]
img = Image_Plot(legend_size=14,
                 fig_x=6,
                 fig_y=4,
                 plt_line_width=2,
                 axis_linewidth=2,
                 xpad=0.2)
img.subplots(1, 1)
# img.set_style()
img.axis_type(0, "major", tick_len=6, tick_width=1.2)
img.axis_type(1, "major", tick_len=6, tick_width=1.2)
bins = img.axs[0][0].hist(-mag_true, 50, ec="gray", label="Entire sample")[1]
img.axs[0][0].hist(-mag_true[idx], bins, ec="gray", label="Detected sample")

ys = img.axs[0][0].set_ylim()
for i, s in enumerate(scale):
    img.axs[0][0].plot([s, s], [ys[0], ys[1]],
                       lw=img.plt_line_width,
                       ls="--",
                       label=line_labels[i])

img.axs[0][0].legend(fontsize=img.legend_size, frameon=False)
img.set_ticklabel_str(0, 0, 0, [2 * i * 100000 for i in range(1, 7)],
                      ["%d" % (2 * i) for i in range(1, 7)])
img.set_label(0, 0, 0, "$10^{-5}N$")
img.set_label(0, 0, 1, "Magnitude")
# img.axs[0][0].set_xlim(22, 25)
img.save_img("E:/cutoff_line.pdf")
img.show_img()
Example #12
0
        if ys_[0] < ys[0]:
            ys[0] = ys_[0]
    x_ticks = numpy.linspace(-0.06, 0.06, 5)

    for i in range(4):
        m, n = divmod(i, 2)
        if i < 2:
            if source_label == "galsim":
                img.axs[m][n].set_ylim(-0.0025, 0.0025)
                img.axs[m][n].set_yticks(numpy.linspace(-0.002, 0.002, 5))
            else:
                img.axs[m][n].set_ylim(-0.0035, 0.0035)
                img.axs[m][n].set_yticks(numpy.linspace(-0.003, 0.003, 5))
        else:
            img.axs[m][n].set_ylim(-0.12, 0.12)
            img.axs[m][n].set_yticks(numpy.linspace(-0.09, 0.09, 7))
        img.axs[m][n].set_xlim(-0.075, 0.075)
        img.axs[m][n].set_xticks(x_ticks)

        if i == 0:
            img.axs[m][n].legend(fontsize=img.legend_size + 1,
                                 loc="upper left",
                                 frameon=False,
                                 ncol=2,
                                 handletextpad=0.5)

    # img.subimg_adjust(h=0, w=0)
    img.save_img(pic_path_png)
    img.save_img(pic_path_pdf)
    print(pic_path_pdf)
    img.close_img()
Example #13
0
        pic_nm = "./result/galsim/mc_%s_ellip_mix.png"%psf_tag
        pic_nm_pdf = "./result/galsim/mc_%s_ellip_mix.pdf"%psf_tag
    else:
        numpy.savez("./result/galsim/cache_%s_ellip_%.2f.npz"%(psf_tag,ellip), mcs)
        pic_nm = "./result/galsim/mc_%s_ellip_%.2f.png"%(psf_tag, ellip)
        pic_nm_pdf = "./result/galsim/mc_%s_ellip_%.2f.pdf"%(psf_tag, ellip)

    y = numpy.zeros((si_num*sr_num,))
    x = numpy.zeros((si_num*sr_num,))
    for i in range(si_num):
        for j in range(sr_num):
            tag = int(i*sr_num + j)
            y[tag] = sersic_index[i]
            x[tag] = scale_radius[j]

    titles = ["$m_1$","$c_1$","$m_2$", "$c_2$"]
    img = Image_Plot(xpad=0.3,ypad=0.3,fig_x=4,fig_y=3)
    img.subplots(2, 2)
    for i in range(2):
        for j in range(2):
            tag = int(i*2 + j)
            z = mcs[tag].flatten()
            img.scatter_pts(i,j,x,y,z,pts_size=30,color_map="bwr")

            img.set_label(i,j,0,"Sersic Index")
            img.set_label(i,j,1,"Scale Radius")
            img.axs[i][j].set_title(titles[tag],fontsize=img.xy_lb_size)
    img.save_img(pic_nm)
    img.save_img(pic_nm_pdf)
    # img.show_img()
Example #14
0
    fig = img.axs[0][2].imshow(qpl_fit, vmin=-vmax_qpl, vmax=vmax_qpl)
    img.figure.colorbar(fig, ax=img.axs[0][2])
    fig = img.axs[1][2].imshow(qpl_sym_fit, vmin=-vmax_qpl, vmax=vmax_qpl)
    img.figure.colorbar(fig, ax=img.axs[1][2])

    for i in range(2):
        for j in range(3):
            if j > 0:
                img.del_ticks(i, j, [0, 1])
                img.set_label(i, j, 0, "+  G1  -")
                img.set_label(i, j, 1, "-  G2  +")

            img.axs[i][j].set_title(titles[i][j])

    pic_name = pic_path + "/%s_%d_compare.png" % (pic_nm, rank)
    img.save_img(pic_name)
    img.close_img()


    # #################################################################################
    # # x & y grid, raidus ....
    # img = Image_Plot()
    # img.subplots(2, 5)
    #
    # titles = [["x-grid", "y-grid", "radius-grid", "radius-bin", "mean_num_annuli"],
    #           ["PDF_SYM-x-grid", "PDF_SYM-y-grid", "PDF_SYM-radius-grid", "PDF_SYM-radius-bin", "PDF_SYM-mean_num_annuli"]]
    # plot_data = [[xgrid, ygrid, radius_grid, radius_mask, mean_of_annuli],
    #              [xgrid_sym, ygrid_sym, radius_grid_sym, radius_mask_sym, mean_of_annuli_sym]]
    # for i in range(2):
    #     for j in range(5):
    #         fig = img.axs[i][j].imshow(plot_data[i][j])
Example #15
0
h5f = h5py.File(data_path + "/bias_test.hdf5", "r")

img = Image_Plot(fig_x=4, fig_y=3, xpad=0.14, ypad=0.2)
img.subplots(2, 4)

for i in range(2):
    for j in range(2):
        tag = int(2 * i + j)
        data = numpy.abs(h5f["/%d" % tag][()])
        scale = 1
        # img.axs[0][tag].errorbar(data[:,0], data[:,1]*scale, data[:,2]*scale,fmt=" ",capsize=3,marker="s", label="$10^3 c_1$")
        img.axs[0][tag].scatter(data[:, 0],
                                data[:, 1] * scale / data[:, 2] * scale,
                                marker="s",
                                label="$|c_1|/\delta_{c_1}$")
        # img.axs[1][tag].errorbar(data[:,0], data[:,3]*scale, data[:,4]*scale,fmt=" ",capsize=3,marker="s", label="$10^3 c_2$")
        img.axs[1][tag].scatter(data[:, 0],
                                data[:, 3] * scale / data[:, 4] * scale,
                                marker="s",
                                label="$|c_2|/\delta_{c_2}$")
        img.set_label(0, tag, 1, "Jack_id")
        img.set_label(1, tag, 1, "Jack_id")
        img.axs[0][tag].legend()
        img.axs[1][tag].legend()
        # img.axs[0][tag].set_yscale("log")
        # img.axs[1][tag].set_yscale("log")
h5f.close()

img.save_img(data_path + "/add_bias_test.jpg")
img.show_img()
Example #16
0
        g2_hat, g2_chisq = fq.get_chisq_range(mg2, mnu2, 8, shear_guess)

        result[0] = g1_hat
        result[1] = g1_chisq
        result[2] = g2_hat
        result[3] = g2_chisq

        img = Image_Plot(fig_x=6, fig_y=4, xpad=0.25, ypad=0.25)
        img.subplots(1, 1)
        img.axs[0][0].plot(g1_hat, g1_chisq, marker="o", label="g1")
        img.axs[0][0].plot(g2_hat, g2_chisq, marker="s", label="g2")
        img.axs[0][0].legend(fontsize=img.legend_size)
        img.set_label(0, 0, 0, "$\chi^2$", fontsize=img.xy_lb_size)
        img.set_label(0, 0, 1, "$g$", fontsize=img.xy_lb_size)

        img.save_img(total_path + "/result/pic/data_%d_%s_chisq.png" %
                     (ig, dst_nms[i]))
        img.close_img()

        if i == 2 or i == 5:

            img = Image_Plot(fig_x=6, fig_y=4, xpad=0.25, ypad=0.25)
            img.subplots(1, 2)

            total_row = mg1.shape[0]
            sub_row = divmod(total_row, sub_num)[0]
            sub_result[2 * sub_num] = shear_guess

            for j in range(sub_num):
                g1_hat, g1_chisq = fq.get_chisq_range(
                    mg1[j * sub_row:(j + 1) * sub_row],
                    mnu1[j * sub_row:(j + 1) * sub_row], 8, shear_guess)
Example #17
0
for i in range(3):
    img.axs[0][i].legend(ncol=3)

for i in range(tomo_panel_num):
    ls, c = img.line_styles[i]
    img.axs[1][0].plot(Lpts,
                       Lpts * (Lpts + 1) * PLs[i] / numpy.pi / 2,
                       label=labels[i],
                       ls=ls,
                       c=c)
    img.axs[1][1].plot(theta, xi_plus[i], label=labels[i], ls=ls, c=c)

# img.axs[0][0].set_xlim(0.7,10000)
img.axs[1][0].set_ylim(1e-10, 1e-3)
for i in range(2):
    img.axs[1][i].set_xscale("log")
    img.axs[1][i].set_yscale("log")

img.set_label(1, 0, 0, "$\ell(\ell+1)}$/2$\pi$ $P_{\kappa}(\ell)$")
img.set_label(1, 0, 1, "$\ell$")

img.set_label(1, 1, 0, "$\\xi_{+}(\\theta)$")
img.set_label(1, 1, 1, "$\\theta$")

img.axs[1][0].legend(ncol=3)
img.axs[1][1].legend(ncol=3)

img.figure.delaxes(img.axs[1][2])
img.save_img(img_nm)
# img.show_img()
img.close_img()
Example #18
0
    ys = img.axs[0][i].set_ylim()
    img.axs[0][i].plot([xs[0], 100], [0, 0],
                       linewidth=img.plt_line_width,
                       c="grey",
                       linestyle="--")
    img.axs[0][i].set_xlim(xs[0], xs[1])
    img.axs[0][i].set_ylim(ys[0] + dys[0], ys[1] + dys[1])
    img.axs[0][i].xaxis.set_major_formatter(xticks)
    img.axs[0][i].set_xlabel("Cutoff percentage", fontsize=img.xy_lb_size)
    img.axs[0][i].set_ylabel(ylabels[col], fontsize=img.xy_lb_size)
    img.axs[0][i].set_xticks(x_tick)
img.axs_text(0,
             0,
             0.1,
             0.65,
             "GII-sample",
             text_color="k",
             text_fontsize=img.xy_lb_size)
img.axs_text(0,
             1,
             0.1,
             0.65,
             "PII-sample",
             text_color="k",
             text_fontsize=img.xy_lb_size)
img.axs[0][0].legend(ncol=4,
                     loc="upper left",
                     fontsize=img.legend_size,
                     bbox_to_anchor=(0.08, 1.18))
img.save_img(pic_nm)
        img.axs[0][0].plot([xs[0], xs[1]], [j, j],
                           linewidth=0.5,
                           c="grey",
                           alpha=0.5)
        img.axs[0][0].plot([xs[0], xs[1]], [10 + 10 * j, 10 + 10 * j],
                           linewidth=0.5,
                           c="grey",
                           alpha=0.5)
        img.axs[0][0].plot([xs[0], xs[1]], [100 + 100 * j, 100 + 100 * j],
                           linewidth=0.5,
                           c="grey",
                           alpha=0.5)

    img.axs[0][0].set_xlim(xs[0], xs[1])

    img.save_img(tool_box.file_name(dens_pic_path + ".png"))
    img.set_style_default()
    img.close_img()

    # # plot R x \Delta\Sigma
    # img = Image_Plot()
    # img.set_style()
    # img.subplots(1,1)
    # img.set_label(0, 0, 0, ylabels_r)
    # img.set_label(0, 0, 1, xlabel)
    # img.axs[0][0].errorbar(result[trans_dist_lb], result[sigtxr_lb], result[sigtxr_lb + 1], c="C1", capsize=4, label="X", marker="s")
    # img.axs[0][0].set_xscale("log")
    # img.save_img(dens_r_pic_path + ".png")
    # img.set_style_default()
    # img.close_img()
from matplotlib import cm

psf_type = "Moffat"
psf_flux = 1
psf_scale = 4
stamp_size = 48
seed = 56525

fq = Fourier_Quad(stamp_size, seed)
img = Image_Plot()
img.subplots(1, 1)
fig = img.axs[0][0].imshow(fq.kx2 + fq.ky2)
img.figure.colorbar(fig, ax=img.axs[0][0])
img.axs[0][0].set_title("$k^2$")
img.del_ticks(0, 0, [0, 1])
img.save_img("E:/kxy.png")
img.show_img()
pst_num = 50

gal_fluxs = [4000, 16000, 32000, 100000]
steps = [0.6, 1, 2, 4]

fq = Fourier_Quad(stamp_size, seed)

max_radius = 7
pts = fq.ran_pts(pst_num, max_radius, step=1)
print(pts)
gal_img = fq.convolve_psf(pts, psf_scale, gal_fluxs[2] / pst_num, psf_type)

noise_1 = fq.draw_noise(0, 1)
noise_2 = fq.draw_noise(0, 1)
Example #21
0
fore_source = argv[1]
area = argv[2]
z1, z2 = float(argv[3]), float(argv[4])
new_name = argv[5]
parent_path = "/mnt/perc/hklee/CFHT/gg_lensing/data/foreground/%s/" % fore_source
data_path = "%s/%s.hdf5" % (parent_path, area)
pic_path = "%s/%s.png" % (parent_path, new_name)

h5f = h5py.File(data_path, "r")
names = list(h5f.keys())
redshift = h5f["/Z"].value
num = redshift.shape[0]

idx1 = redshift >= z1
idx2 = redshift < z2
idx = idx1 & idx2

img = Image_Plot()
img.subplots(1, 1)
bins = img.axs[0][0].hist(redshift, label="All")[1]
img.axs[0][0].hist(redshift[idx], bins=bins, label="[%.3f, %.3f]" % (z1, z2))
img.save_img(pic_path)

h5f_new = h5py.File(parent_path + new_name + ".hdf5", "w")
for nm in names:
    h5f_new["/%s" % nm] = h5f["/%s" % nm].value[idx]
    print("%d == > %d in [%.3f, %.3f] Z bin" % (num, idx.sum(), z1, z2))
h5f.close()
h5f_new.close()
Example #22
0
#     if i < 10:
#         print("%d in %d [%.4f, %.4f]"%
#               (pair_num,i,radius_bin[i],radius_bin[i+1]),ra_s[idx],dec_s[idx],sep_ang[idx],sep_dist[idx])

astro_data = numpy.loadtxt(
    "/home/hklee/work/CFHT/gg_lensing/dens_cluster/dens_cluster.txt")
img.axs[0][0].errorbar(astro_data[0],
                       astro_data[1],
                       astro_data[2:4],
                       c="k",
                       marker="s",
                       capsize=4,
                       mfc="none",
                       fmt=" ",
                       label="Dens",
                       alpha=0.6)
img.axs[0][0].errorbar(result[0],
                       result[1],
                       c="C1",
                       marker="o",
                       capsize=4,
                       fmt=" ",
                       label="T")
img.axs[0][0].legend()
img.axs[0][0].set_ylim(1, 5000)
img.axs[0][0].set_xlim(0.09, 30)

img.axs[0][0].set_xscale("log")
img.axs[0][0].set_yscale("log")
img.save_img("dens.png")
Example #23
0
        fit_num=20,
        dg=0.002,
        ax=img.axs[0][1])[:4]
    t2 = time.time()

    chisq_min_c = coeffc[0] - coeffc[1]**2 / 4 / coeffc[2]
    result_min[2, tag] = chisq_min_c
    result_min[3, tag] = asymc

    for m in range(2):
        img.axis_sci_ticklabel(0, m, 1)
    print(
        "%.5f(%.5f). asym: %.3e. %d source + %d contaminations + %d corrections. %.2f sec"
        % (ghc, ghc_sig, asymc, num_s, num_non, num_corr, t2 - t1))

    img.save_img(data_path + "/result/%d/%s_%.2f_dilute_%d_mg_bins.png" %
                 (mg_bin_num, data_type, dilute_case[tag], mg_bin_num))
    # img.show_img()
    img.close_img()

comm.Barrier()
if rank == 0:
    numpy.savez(
        data_path + "/result/%d/%s_min_change_%d.npz" %
        (mg_bin_num, data_type, mg_bin_num), result_min)
    img = Image_Plot(xpad=0.25)
    img.subplots(1, 2)
    img.axs[0][0].plot(dilute_case,
                       result_min[0],
                       label="$\chi^2_{min}$",
                       marker="s")
    img.axs[0][0].plot(dilute_case,
Example #24
0
    if i == 0:
        fig = img.axs[0][i].imshow(shear_field[inverse], cmap="jet")
        img.figure.colorbar(fig, ax=img.axs[0][i])
    elif i == 1:
        num_dens = numpy.histogram2d(gal_coord[0], gal_coord[1],
                                     [ra_bin, dec_bin])[0]
        fig = img.axs[0][i].imshow(num_dens, cmap="jet")
        img.figure.colorbar(fig, ax=img.axs[0][i])
    else:
        img.axs[0][i].scatter(ra,
                              dec,
                              color=cmap_g(norm_g(shear_field_ch)),
                              s=1)
        sm = plt.cm.ScalarMappable(cmap=cmap_g, norm=norm_g)
        sm._A = []
        plt.colorbar(sm, ax=img.axs[0][i])
        img.axs[0][i].set_title("%d galaxies" % num_each_expo)

    img.set_label(0, i, 0, "DEC. [arcmin]")
    img.set_label(0, i, 1, "R.A. [arcmin]")
    if i < 2:
        img.axs[0][i].set_yticks([int(nx - k * nx / 5) for k in range(6)])
        img.axs[0][i].set_yticklabels(
            ["%.1f" % (k * nx / 5. * pixel_scale) for k in range(6)])
        img.axs[0][i].set_xticks([int(k * ny / 5) for k in range(6)])
        img.axs[0][i].set_xticklabels(
            ["%.1f" % (k * ny / 5. * pixel_scale) for k in range(6)])

img.save_img(parent_path + "pic/shear_field_slope.png")
img.show_img()
Example #25
0
h5f = h5py.File("/mnt/ddnfs/data_users/hkli/CFHT/catalog/cfht_cata/cata.hdf5","r")
labels = ["w_1", "w_2", "w_3", "w_4"]
for i in range(1,5):
    data = h5f[labels[i-1]].value
    dec = data[:,1]
    ra = data[:,0]
    ra_min, ra_max = ra.min(), ra.max()
    dec_min, dec_max = dec.min(), dec.max()
    pts_1 = [ra_min, ra_max, ra_max, ra_min, ra_min]
    pts_2 = [dec_min, dec_min, dec_max, dec_max, dec_min]

    img.axs[0][0].plot(pts_1, pts_2, label=labels[i-1])

h5f.close()
img.axs[0][0].legend()
img.save_img("/mnt/ddnfs/data_users/hkli/CFHT/gg_lensing/result/pic/overlap_ori.png")
plt.close()


# The catalog in grid
img = Image_Plot(fig_x=12, fig_y=9)
img.set_style()
img.plot_img(1, 1)

img.axs[0][0].scatter(ra_n, dec_n, s=3, alpha=0.5, label="CMASS_NORTH")
img.axs[0][0].scatter(ra_s, dec_s, s=3, alpha=0.5, label="CMASS_SOUTH")

h5f = h5py.File("/mnt/ddnfs/data_users/hkli/CFHT/gg_lensing/data/cata_result_ext_grid.hdf5", "r")
labels = ["w_1", "w_2", "w_3", "w_4"]
for i in range(1, 5):
    ra = h5f["/background/w_%d/RA" % i].value
Example #26
0
def plot_gf(ra, dec, gf1, gf2, pic_path, gf1_bin_num = 15, gf2_bin_num = 18,gf_bin_num = 18):
    gf = numpy.sqrt(gf1**2 + gf2**2)

    label_1 = numpy.zeros_like(gf1)
    label_2 = numpy.zeros_like(gf2)
    label_3 = numpy.zeros_like(gf)

    gf1_bin = numpy.linspace(gf1.min(), gf1.max(), gf1_bin_num+1)
    gf2_bin = numpy.linspace(gf2.min(), gf2.max(), gf2_bin_num+1)
    gf_bin = numpy.linspace(gf.min(), gf.max(), gf_bin_num+1)

    for i in range(gf1_bin_num):
        idx1 = gf1 >= gf1_bin[i]
        idx2 = gf1 < gf1_bin[i+1]
        idx = idx1 & idx2
        label_1[idx] = (gf1_bin[i]+ gf1_bin[i+1])/2

    for i in range(gf2_bin_num):
        idx1 = gf2 >= gf2_bin[i]
        idx2 = gf2 < gf2_bin[i+1]
        idx = idx1 & idx2
        label_2[idx] = (gf2_bin[i]+ gf2_bin[i+1])/2

    for i in range(gf_bin_num):
        idx1 = gf >= gf_bin[i]
        idx2 = gf < gf_bin[i+1]
        idx = idx1 & idx2
        label_3[idx] = (gf_bin[i]+ gf_bin[i+1])/2


    img = Image_Plot()
    img.subplots(1,3)

    norm = plt.Normalize(vmin=numpy.min(label_1), vmax=numpy.max(label_1))
    cmap = plt.get_cmap('YlOrRd',gf1_bin_num)
    cl = cmap(norm(label_1))
    fig = img.axs[0][0].scatter(ra, dec, color=cl, s=3)
    sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
    sm._A = []
    img.figure.colorbar(sm, ax=img.axs[0][0])


    norm = plt.Normalize(vmin=numpy.min(label_2), vmax=numpy.max(label_2))
    cmap = plt.get_cmap('YlOrRd',gf2_bin_num)
    cl = cmap(norm(label_2))
    fig = img.axs[0][1].scatter(ra, dec, color=cl, s=3)
    sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
    sm._A = []
    img.figure.colorbar(sm, ax=img.axs[0][1])


    norm = plt.Normalize(vmin=numpy.min(label_3), vmax=numpy.max(label_3))
    cmap = plt.get_cmap('YlOrRd',gf_bin_num)
    cl = cmap(norm(label_3))
    fig = img.axs[0][2].scatter(ra, dec, color=cl, s=3)
    sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
    sm._A = []
    img.figure.colorbar(sm, ax=img.axs[0][2])

    img.save_img(pic_path)
    # img.show_img()
    img.close_img()
        g = numpy.sqrt(g1**2 + g2**2)

        img.scatter_pts(0, i, ra, dec, kappa)
        img.scatter_pts(1, i, ra, dec, g)
        img.scatter_pts(2, i, ra, dec, g1)
        img.scatter_pts(3, i, ra, dec, g2)

        img.axs[0][i].set_title("kappa from source plane at Z=%.3f" % src_z[i])
        img.axs[1][i].set_title("g from source plane at Z=%.3f" % src_z[i])
        img.axs[2][i].set_title("g1 from source plane at Z=%.3f" % src_z[i])
        img.axs[3][i].set_title("g2 from source plane at Z=%.3f" % src_z[i])

        for j in range(4):
            img.set_label(j, i, 0, "Dec. [arcsec]")
            img.set_label(j, i, 1, "R.A. [arcsec]")
    img.save_img("./pic/sample.png")
    img.close_img()
# img.show_img()
comm.Barrier()

# random position of source galaxies
total_num = 10000000
half_num = int(total_num / 2)
max_angle = Rmax  # arcsec
max_radius = com_dist_len * max_angle / 3600 * numpy.pi / 180
gal_x = numpy.random.uniform(-max_angle, max_angle,
                             total_num).astype(dtype=numpy.float32)
gal_y = numpy.random.uniform(-max_angle, max_angle,
                             total_num).astype(dtype=numpy.float32)
print(max_radius, " Mpc/h")
        g2[shear_tag], gh2_grid, gh2_sig_grid, g2[shear_tag] - gh2_grid,
        gh2_sig_grid, t4 - t3)
    print(result_str)

    result[j, :, rank] = gh1_grid, gh1_sig_grid, gh2_grid, gh2_sig_grid

    text = "%s [%d, %d]\ng1: %.5f,  %.5f(%.5f)\ndiff: %.5f" % (
        bin_type[j], num_g, num_nu, g1[shear_tag], gh1_grid, gh1_sig_grid,
        g1[shear_tag] - gh1_grid)
    img.axs_text(0, j, 0.9, 0.05, text, text_fontsize=15)
    text = "%s [%d, %d]\ng2: %.5f,  %.5f(%.5f)\ndiff: %.5f" % (
        bin_type[j], num_g, num_nu, g2[shear_tag], gh2_grid, gh2_sig_grid,
        g2[shear_tag] - gh2_grid)
    img.axs_text(1, j, 0.9, 0.05, text, text_fontsize=15)

img.save_img("./pic/%s_%d.png" % (bins, rank))
# img.show_img()
img.close_img()
comm.Barrier()

if rank == 0:
    img = Image_Plot()
    img.subplots(2, 5)
    for i in range(5):
        img.axs[0][i].errorbar(g1,
                               result[i, 0, :],
                               result[i, 1, :],
                               marker="s",
                               ms=5,
                               fmt=" ",
                               label="g1")
Example #29
0
                       capsize=img.cap_size,
                       marker="o",
                       fillstyle="none",
                       c="C1",
                       label="$m_1$, weight=$\\tilde{\\nu}_F^{-2}$")
img.axs[0][0].errorbar(x_coord,
                       100 * mc2_mpk_pk_fit[0],
                       100 * mc2_mpk_pk_fit[1],
                       linewidth=img.plt_line_width - 0.5,
                       capsize=img.cap_size,
                       marker="o",
                       fillstyle="none",
                       ls="--",
                       c="C1",
                       label="$m_2$, weight=$\\tilde{\\nu}_F^{-2}$")
# img.axs[0][0].errorbar(x_coord, 100 * mc1_mpk_tmag[0], 100 * mc1_mpk_tmag[1], linewidth=img.plt_line_width,
#                        capsize=img.cap_size, marker="s", fillstyle="none")
xs = img.axs[0][0].set_xlim()
ys = img.axs[0][0].set_ylim(-1.02, 1.02)
img.axs[0][0].plot([xs[0], 100], [0, 0],
                   linewidth=img.plt_line_width - 0.5,
                   c="grey",
                   alpha=0.7,
                   linestyle="--")
img.axs[0][0].xaxis.set_major_formatter(xticks)
img.axs[0][0].set_xlabel("Cutoff percentage", fontsize=img.xy_lb_size)
img.axs[0][0].set_ylabel("$m_{1/2}\\times 10^2$", fontsize=img.xy_lb_size)
img.axs[0][0].set_xticks(x_tick)
img.axs[0][0].legend(ncol=2, fontsize=img.legend_size, frameon=False)
img.save_img("E:/weight_compare.pdf")
img.show_img()
img.show_img()


for k in range(test_num):
    mg_i = mg - a2_test[k]*x
    chi_temp_sym = fq.get_chisq(mg_i, 0, 0, mg_bins, bin_num2, inverse, 0)
    img = Image_Plot()
    img.subplots(1,2)
    for ib in range(bin_num):
        img.axs[0][0].scatter(mg_i[bin_idx[ib]], x[bin_idx[ib]], c="C%d" %ib, s=7)

    ys = img.axs[0][0].set_ylim()
    x_label = numpy.linspace(-0.5, 0.5, 7)
    for j in range(7):
        img.axs[0][0].plot([x_label[j], x_label[j]], [ys[0], ys[1]], linestyle="--", c="k", linewidth=2)
    img.axs[0][0].set_ylim(ys)
    img.axs[0][0].set_title("$\chi^2$=%.2f, $a_2$=%.3f"%(chi_temp_sym,a2_test[k]),fontsize=img.xy_lb_size)
    img.set_label(0,0,0,"X")
    img.set_label(0,0,1,"G")

    fx = a2_test[k]*x_plt
    print(fx.min(), fx.max())
    img.axs[0][1].plot(fx,x_plt)
    img.set_label(0,1,1,"g")
    img.set_label(0,1,0,"X")
    img.axs[0][1].set_xlim(-0.9,0.9)

    img.save_img("H:/GGL/1D_slope/move/%d.png"%k)
    # img.show_img()
    img.close_img()