Example #1
0
def main_plot(data, **kwargs):
    what_type = kwargs["what_type"]
    mode = kwargs["mode"]
    show = kwargs["show"]
    save = kwargs["save"]
    save_name = kwargs["save_name"]

    if what_type == "non_line":
        visualize.visual_non_line(data,
                                  mode=mode,
                                  save_name=save_name,
                                  show=show)
    elif what_type == "map":
        mode0 = mode[0]
        submode = mode[1]
        if mode0 == 0:
            visualize.visual_map(data,
                                 mode0,
                                 submode,
                                 save_name=save_name,
                                 show=show)
        elif mode0 == 1:
            visualize.visual_map(data,
                                 mode0,
                                 submode,
                                 save_name=save_name,
                                 show=show)
        elif mode0 == 2:
            data = [ic0_900_file_name, latlon900_file_name]
            visualize.visual_map(data,
                                 mode0,
                                 submode,
                                 save_name=save_name,
                                 show=show)
Example #2
0
def scatter_5():
	dirs = "../result/scatter/scatter_A_30_and_sit_h_np/"
	try:
		os.makedirs(dirs)
	except:
		print('directory {} already exists'.format(dirs))

	for i, start in enumerate(start_list):
		print("******************  {}/{}  *******************".format(i+1, M))
		month_end = start_list_plus_1month[i+1]
		month_end = date(month_end//10000, (month_end%10000)//100, (month_end%10000)%100) - timedelta(days=1)
		end = start + month_end.day - 1

		_, _, _, data_A = main_data(
			start, start, 
			span=30, 
			get_columns=["coeff"], 
			region=None, 
			accumulate=False
			)
		data_A = data_A.loc[:, ["data_idx", "A", "coef"]]

		data_A.A.loc[data_A.coef**2<0.4**2] = np.nan
		data_A.A.loc[data_A.A<0] *= -1
		#data_A.A.loc[data_A.data_idx==0.] = np.nan


		date_ax, _, skipping_date_str, data_sit_30 = main_data(
			start, end, 
			span=30, 
			get_columns=["sit_145"], 
			region=None, 
			accumulate=True
			)

		data_array = np.array(data_sit_30)
		"""
		data_array_1 = np.ma.masked_invalid(data_array)
		data_count_nan = np.sum(data_array_1.recordmask, axis=0)
		data_ave = np.sum(data_array, axis=0) / (len(date_ax)-data_count_nan)
		"""
		data_ave = np.nanmean(data_array, axis=0)
		data_ave = pd.DataFrame(data_ave)
		data_ave.columns = ["sit_30"]

		data = pd.concat([latlon_ex, data_A, data_ave], axis=1)
		data = data[data.Name=="north_polar"]
		print(data.dropna().head())

		save_name = dirs + str(start)[:6] + ".png"
		#visualize.pyで関数を選ぶ
		visualize.visual_non_line(
			data,
			mode=["scatter", ["sit_30", "A"]],
			save_name=save_name,
			show=False
			)
		print("\n")
Example #3
0
def test_w_iw():
    start_list = []
    n = 20000000
    y_list = [4, 6, 8, 10, 14, 16]
    for i in y_list:
        m = n + i * 10000
        for j in [2, 4, 6, 8, 10]:
            start_list.append(m + j * 100 + 1)

    dirs = "../result_h/test/w_iw/"
    mkdir(dirs)

    for i, start in enumerate(start_list):
        print("*******************  {}/{}  *******************".format(
            i + 1, M))
        month_end = start + 100
        month_end = date(month_end // 10000, (month_end % 10000) // 100,
                         (month_end % 10000) % 100) - timedelta(days=1)
        end = start + month_end.day - 1
        _, _, _, data = main_data(start,
                                  end,
                                  span=30,
                                  get_columns=["w", "iw"],
                                  region=None,
                                  accumulate=True)
        np_region_idx = np.array(
            latlon_ex.loc[latlon_ex.Name == "north_polar", :].index)
        print(np_region_idx)
        data = np.array(data)
        #data_w = data[:, :, 0].flatten().reshape(-1,1)
        #data_iw = data[:, :, 3].flatten().reshape(-1,1)
        #data = np.hstack((data_w, data_iw))
        #print(data.shape)
        #print(data[10, :, [0,3]].shape)
        data = data[10, :, [0, 3]].T
        data = data[np_region_idx, :]
        data = pd.DataFrame(data)
        #print(data.shape)
        data.columns = ["w", "iw"]

        save_name = dirs + str(start)[:6] + ".png"
        visualize.visual_non_line(data.dropna(),
                                  mode=["scatter", ["w", "iw"]],
                                  save_name=save_name,
                                  show=False)
Example #4
0
def H_corr_1month():
    dirs_ic0 = "../result_h/corr/H_corr_1month_ic0/"
    mkdir(dirs_ic0)
    dirs_sit = "../result_h/corr/H_corr_1month_sit/"
    mkdir(dirs_sit)

    start_list = []
    n = 20000000
    y_list = [3, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16]
    for i in y_list:
        m = n + i * 10000
        for j in range(12):
            start_list.append(m + (j + 1) * 100 + 1)
    M = len(start_list)
    start_list_plus_1month = start_list + [20170101]

    for i, start in enumerate(start_list):
        print("******************  {}/{}  *******************".format(
            i + 1, M))
        month_end = start_list_plus_1month[i + 1]
        month_end = date(month_end // 10000, (month_end % 10000) // 100,
                         (month_end % 10000) % 100) - timedelta(days=1)
        end = start + month_end.day - 1

        start_1month_before = date(start // 10000, (start % 10000) // 100,
                                   (start % 10000) % 100) - timedelta(days=1)
        start_1month_before = int(calc_data.cvt_date(start_1month_before))
        print("\tA month: {}\n\tIC0 & SIT month: {}, {}".format(
            start_1month_before, start, end))

        _, _, _, data_A_original = main_data(start_1month_before,
                                             start_1month_before,
                                             span=30,
                                             get_columns=["hermert"],
                                             region=None,
                                             accumulate=False)

        _, _, _, data_ic0_sit = main_data(start,
                                          end,
                                          span=30,
                                          get_columns=["ic0_145", "sit_145"],
                                          region=None,
                                          accumulate=True)

        data_array = np.array(data_ic0_sit)
        data_ave = np.nanmean(data_array, axis=0)
        data_ave = pd.DataFrame(data_ave)
        data_ave.columns = ["ic0_30", "sit_30"]

        data_A = data_A_original["A"]
        data = pd.concat([latlon_ex, data_A, data_ave], axis=1)

        save_name = dirs_ic0 + str(start)[:6] + ".png"
        visualize.visual_non_line(data,
                                  mode=["scatter", ["ic0_30", "A"]],
                                  save_name=save_name,
                                  show=False)

        save_name = dirs_sit + str(start)[:6] + ".png"
        visualize.visual_non_line(data,
                                  mode=["scatter", ["sit_30", "A"]],
                                  save_name=save_name,
                                  show=False)

        print("\n")
Example #5
0
def H_scatter_sit_np():
	dirs_A_30_and_sit_all = "../result/scatter/scatter_A_30_and_sit_all/"
	mkdir(dirs_A_30_and_sit_all)
	dirs_A_30_and_sit_np = "../result/scatter/scatter_A_30_and_sit_np/"
	mkdir(dirs_A_30_and_sit_np)
	dirs_A_30_and_sit_h_np = "../result/scatter/scatter_A_30_and_sit_h_np/"
	mkdir(dirs_A_30_and_sit_h_np)	
	dirs_angle_30_and_sit_all = "../result/scatter/scatter_angle_30_and_sit_all/"
	mkdir(dirs_angle_30_and_sit_all)
	dirs_angle_30_and_sit_np = "../result/scatter/scatter_angle_30_and_sit_np/"
	mkdir(dirs_angle_30_and_sit_np)
	dirs_angle_30_and_sit_h_np = "../result/scatter/scatter_angle_30_and_sit_h_np/"
	mkdir(dirs_angle_30_and_sit_h_np)

	for i, start in enumerate(start_list):
		print("******************  {}/{}  *******************".format(i+1, M))
		month_end = start_list_plus_1month[i+1]
		month_end = date(month_end//10000, (month_end%10000)//100, (month_end%10000)%100) - timedelta(days=1)
		end = start + month_end.day - 1

		_, _, _, data_A_original = main_data(
			start, start, 
			span=30, 
			get_columns=["hermert"], 
			region=None, 
			accumulate=False
			)

		_, _, _, data_sit_30 = main_data(
			start, end, 
			span=30, 
			get_columns=["sit_145"], 
			region=None, 
			accumulate=True
			)

		data_array = np.array(data_sit_30)
		data_ave = np.nanmean(data_array, axis=0)
		data_ave = pd.DataFrame(data_ave)
		data_ave.columns = ["sit_30"]

		#dirs_A_30_and_sit_all
		data_A = data_A_original["A"]
		data = pd.concat([latlon_ex, data_A, data_ave], axis=1)

		save_name = dirs_A_30_and_sit_all + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data,
			mode=["scatter", ["sit_30", "A"]],
			save_name=save_name,
			show=False
			)

		#dirs_A_30_and_sit_np
		data_A_1 = data_A_original.loc[:, ["A", "R2"]]
		data_1 = pd.concat([latlon_ex, data_A_1, data_ave], axis=1)
		data_1 = data_1[data_1.Name=="north_polar"]

		save_name = dirs_A_30_and_sit_np + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data_1,
			mode=["scatter", ["sit_30", "A"]],
			save_name=save_name,
			show=False
			)

		#dirs_A_30_and_sit_h_np
		data_A_2 = data_A_original.loc[:, ["A", "R2"]]
		data_A_2.loc[data_A_2.R2<threshold_R2, data_A_2.A] = np.nan
		data_1_2 = pd.concat([latlon_ex, data_A_2, data_ave], axis=1)
		data_1_2 = data_1_2[data_1_2.Name=="north_polar"]

		save_name = dirs_A_30_and_sit_h_np + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data_1_2,
			mode=["scatter", ["sit_30", "A"]],
			save_name=save_name,
			show=False
			)

		#dirs_angle_30_and_sit_all
		data_angle = data_A_original["theta"]
		data_2 = pd.concat([latlon_ex, data_angle, data_ave], axis=1)

		save_name = dirs_angle_30_and_sit_all + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data_2,
			mode=["scatter", ["sit_30", "theta"]],
			save_name=save_name,
			show=False
			)

		#dirs_angle_30_and_sit_np
		data_angle_1 = data_A_original.loc[:, ["theta", "R2"]]
		data_3 = pd.concat([latlon_ex, data_angle_1, data_ave], axis=1)
		data_3 = data_3[data_3.Name=="north_polar"]

		save_name = dirs_angle_30_and_sit_np + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data_3,
			mode=["scatter", ["sit_30", "theta"]],
			save_name=save_name,
			show=False
			)

		#dirs_angle_30_and_sit_h_np
		data_angle_1 = data_A_original.loc[:, ["theta", "R2"]]
		data_angle_1.loc[data_angle_1.R2<threshold_R2, data_angle_1.theta] = np.nan
		data_3 = pd.concat([latlon_ex, data_angle_1, data_ave], axis=1)
		data_3 = data_3[data_3.Name=="north_polar"]

		save_name = dirs_angle_30_and_sit_h_np + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data_3,
			mode=["scatter", ["sit_30", "theta"]],
			save_name=save_name,
			show=False
			)

		print("\n")
Example #6
0
		_, _, _, data = main_data(
			start, end, 
			span=30, 
			get_columns=["w", "iw"], 
			region=None, 
			accumulate=True
			)

!		data = data[:, :, [0, 3]]
		data = pd.DataFrame(data)
		data.columns = ["iw", "w"]

		save_name = dirs + str(start)[:6] + ".png"
		visualize.visual_non_line(
			data,
			mode=["scatter", ["w", "iw"]],
			save_name=save_name,
			show=False
			)



###############################################################################################################

#R2_30, epsilon2_30
def H_R2_e2_30():
	dirs_R2 = "../result_h/R2/R2_30/"
	mkdir(dirs_R2)
	dirs_e2 = "../result_h/epsilon2/epsilon2_30/"
	mkdir(dirs_e2)

	for i, start in enumerate(start_list):
Example #7
0
def scatter_0():
	"""
	start_list = []
	n = 20000000
	y_list = [13,14,15,16]
	for i in y_list:
		m = n + i*10000
		for j in range(12):
			start_list.append(m + (j+1)*100 + 1)
	start_ex_list = [20170101, 20170201, 20170301, 20170401, 20170501, 20170601,20170701,20170801]
	start_list = np.sort(np.array(list(set(start_list)|set(start_ex_list)))).tolist()
	M = len(start_list)
	start_list_plus_1month = start_list + [20170901]
	"""

	dirs = "../result/scatter/scatter_A_30_and_ic0_np/"
	try:
		os.makedirs(dirs)
	except:
		print('directory {} already exists'.format(dirs))

	for i, start in enumerate(start_list):
		print("******************  {}/{}  *******************".format(i+1, M))
		month_end = start_list_plus_1month[i+1]
		month_end = date(month_end//10000, (month_end%10000)//100, (month_end%10000)%100) - timedelta(days=1)
		end = start + month_end.day - 1

		_, _, _, data_A = main_data(
			start, start, 
			span=30, 
			get_columns=["coeff"], 
			region=None, 
			accumulate=False
			)
		data_A = data_A.loc[:, ["data_idx", "A"]]
		data_A.A.loc[data_A.A<0] *= -1
		#data_A.A.loc[data_A.data_idx==0.] = np.nan

		date_ax, _, _, data_ic0_30 = main_data(
			start, end, 
			span=30, 
			get_columns=["ic0_145"], 
			region=None, 
			accumulate=True
			)

		data_array = np.array(data_ic0_30)
		"""
		data_array_1 = np.ma.masked_invalid(data_array)
		data_count_nan = np.sum(data_array_1.recordmask, axis=0)
		data_ave = np.sum(data_array, axis=0) / (len(date_ax)-data_count_nan)
		"""
		data_ave = np.nanmean(data_array, axis=0)
		data_ave = pd.DataFrame(data_ave)
		data_ave.columns = ["ic0_30"]

		data = pd.concat([latlon_ex, data_A, data_ave], axis=1)
		data = data[data.Name=="north_polar"]
		#print(data.dropna().head())

		save_name = dirs + str(start)[:6] + ".png"
		#visualize.pyで関数を選ぶ
		visualize.visual_non_line(
			data,
			mode=["scatter", ["ic0_30", "A"]],
			save_name=save_name,
			show=False
			)
		print("\n")