Esempio n. 1
0
def diff_bar_dict(target_dict, key_a, key_ref):
    print "plot_diff_bar_dict(target_dict, key_a, key_ref, target_file) is called"
    diff_dict = {}
    min_temp = 0
    max_temp = 0

    if key_a != '':
        for probe in target_dict.keys():
            if (probe == key_a) and (probe != key_ref):
                list_a, list_base = get_lists_from_dict(target_dict, probe, key_ref)
                diff_dict[probe] = paa.diff_of_list_calculator(list_a, list_base)
                if min(diff_dict[probe]) < min_temp:
                    min_temp = min(diff_dict[probe])
                if max(diff_dict[probe]) > max_temp:
                    max_temp = max(diff_dict[probe])
    else:
        for probe in target_dict.keys():
            if probe != key_ref:
                list_a, list_base = get_lists_from_dict(target_dict, probe, key_ref)
                diff_dict[probe] = paa.diff_of_list_calculator(list_a, list_base)
                if min(diff_dict[probe]) < min_temp:
                    min_temp = min(diff_dict[probe])
                if max(diff_dict[probe]) > max_temp:
                    max_temp = max(diff_dict[probe])

    return diff_dict, min_temp, max_temp
Esempio n. 2
0
def plot_diff_bar_lists(list_a, list_base, target_file):
    list_diff = paa.diff_of_list_calculator(list_a, list_base)
    pd.DataFrame(list_diff).plot(kind='bar')
    plt.axhline(0, color='k')

    y_axis, geo_temp, x_axis_ticks, x_axis_name = demarcate_regions(target_file)
    plt.xlabel(r"\textrm{destinations}", font)
    plt.ylabel(r"\textrm{relative RTT (ms)}", font)
    plt.xticks(x_axis_ticks, x_axis_name, fontsize=30, fontname="Times New Roman", rotation='horizontal')   # 可加此变量,让横坐标的 name 竖直显示: rotation='vertical'
    plt.yticks(fontsize=30, fontname="Times New Roman")
    plt.legend(loc='best', fontsize=30)
    plt.xlim(-0.5, geo_temp-0.5)   # 用 plot 的 plt.xlim
    plt.ylim(min(list_diff)-10.0, max(list_diff)+10.0)
    plt.savefig(os.path.join(FIGURE_PATH_NAME, '{0}_relative_rtt_{1}_{2}_geo.eps'.format(EXPERIMENT_NAME, RELATIVE_KEY_A, RELATIVE_KEY_REF)), dpi=300, transparent=True)

    plt.show()