//  [python]
def run_gassian_plot():
    # -------------------------------dim
    k_means_time = pd.read_csv("results/exp1/gd_kmeans_time.csv")
    dbscan_kdtree_time = pd.read_csv("results/exp1/gd_dbscan_kdtree_time.csv")
    dbscan_btree_time = pd.read_csv("results/exp1/gd_dbscan_btree_time.csv")
    hdbscan_time = pd.read_csv("results/exp1/gd_hdbscan_time.csv")
    classix_time = pd.read_csv("results/exp1/gd_classix_time.csv")
    quicks_time = pd.read_csv("results/exp1/gd_quicks_time.csv")
    
    k_means_ar = pd.read_csv("results/exp1/gd_kmeans_ar.csv")
    dbscan_kdtree_ar = pd.read_csv("results/exp1/gd_dbscan_kdtree_ar.csv")
    dbscan_btree_ar = pd.read_csv("results/exp1/gd_dbscan_btree_ar.csv")
    hdbscan_ar = pd.read_csv("results/exp1/gd_hdbscan_ar.csv")
    classix_ar = pd.read_csv("results/exp1/gd_classix_ar.csv")
    quicks_ar = pd.read_csv("results/exp1/gd_quicks_ar.csv")
    
    plt.figure(figsize=(12,8))
    plt.style.use('bmh')
    sns.set(font_scale=1.8)
    sns.set_style("whitegrid")
    plt.rcParams['axes.facecolor'] = 'white'
    # plt.rc('font', family='serif')

    ax = sns.lineplot(data=k_means_time, x="x", y="y", marker='v', markersize=13, label='k-means++', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=dbscan_kdtree_time, x="x", y="y", marker='s', markersize=13, label='DBSCAN (kd-tree)', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=dbscan_btree_time, x="x", y="y", marker='o', markersize=13, label='DBSCAN (ball tree)', linestyle=":", linewidth=6)
    ax = sns.lineplot(data=hdbscan_time, x="x", y="y", marker='<', markersize=13, label='HDBSCAN', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=classix_time, x="x", y="y", marker='*', markersize=17, label='CLASSIX', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=quicks_time, x="x", y="y", marker='p', markersize=17, label='Quickshift++', linestyle=(0, (3, 1, 1, 1, 1, 1)), linewidth=6)
    
    ax.set(xlabel='dimensions', ylabel='time (s)', title="Gaussian blobs (n=10000)")
    plt.tick_params(axis='both',  labelsize=22)
    plt.savefig('results/exp1/gaussian_dim_time.pdf', bbox_inches='tight')

    plt.figure(figsize=(12,8))
    plt.style.use('bmh')
    sns.set(font_scale=1.8)
    sns.set_style("whitegrid")
    plt.rcParams['axes.facecolor'] = 'white'
    # plt.rc('font', family='serif')

    ax = sns.lineplot(data=k_means_ar, x="x", y="y", marker='v', markersize=13, label='k-means++', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=dbscan_kdtree_ar, x="x", y="y", marker='s', markersize=13, label='DBSCAN (kd-tree)', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=dbscan_btree_ar, x="x", y="y", marker='o', markersize=13, label='DBSCAN (ball tree)', linestyle=":", linewidth=6)
    ax = sns.lineplot(data=hdbscan_ar, x="x", y="y", marker='<', markersize=13, label='HDBSCAN', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=classix_ar, x="x", y="y", marker='*', markersize=17, label='CLASSIX', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=quicks_ar, x="x", y="y", marker='p', markersize=17, label='Quickshift++', linestyle=(0, (3, 1, 1, 1, 1, 1)), linewidth=6)
    
    ax.set(xlabel='dimensions', ylabel='adjusted Rand index', title="Gaussian blobs (n=10000)")
    ax.set(ylim=(-.1, 1.1))
    plt.tick_params(axis='both',  labelsize=22)
    plt.savefig('results/exp1/gaussian_dim_ar.pdf', bbox_inches='tight')
    
    # -------------------------------size
    k_means_time = pd.read_csv("results/exp1/gs_kmeans_time.csv")
    dbscan_kdtree_time = pd.read_csv("results/exp1/gs_dbscan_kdtree_time.csv")
    dbscan_btree_time = pd.read_csv("results/exp1/gs_dbscan_btree_time.csv")
    hdbscan_time = pd.read_csv("results/exp1/gs_hdbscan_time.csv")
    classix_time = pd.read_csv("results/exp1/gs_classix_time.csv")
    quicks_time = pd.read_csv("results/exp1/gs_quicks_time.csv")
    
    k_means_ar = pd.read_csv("results/exp1/gs_kmeans_ar.csv")
    dbscan_kdtree_ar = pd.read_csv("results/exp1/gs_dbscan_kdtree_ar.csv")
    dbscan_btree_ar = pd.read_csv("results/exp1/gs_dbscan_btree_ar.csv")
    hdbscan_ar = pd.read_csv("results/exp1/gs_hdbscan_ar.csv")
    classix_ar = pd.read_csv("results/exp1/gs_classix_ar.csv")
    quicks_ar = pd.read_csv("results/exp1/gs_quicks_ar.csv")
    
    plt.figure(figsize=(12,8))
    plt.style.use('bmh')
    sns.set(font_scale=1.8)
    sns.set_style("whitegrid")
    plt.rcParams['axes.facecolor'] = 'white'

    ax = sns.lineplot(data=k_means_time, x="x", y="y", marker='v', markersize=13, label='k-means++', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=dbscan_kdtree_time, x="x", y="y", marker='s', markersize=13, label='DBSCAN (kd-tree)', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=dbscan_btree_time, x="x", y="y", marker='o', markersize=13, label='DBSCAN (ball tree)', linestyle=":", linewidth=6)
    ax = sns.lineplot(data=hdbscan_time, x="x", y="y", marker='<', markersize=13, label='HDBSCAN', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=classix_time, x="x", y="y", marker='*', markersize=17, label='CLASSIX', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=quicks_time, x="x", y="y", marker='p', markersize=17, label='Quickshift++', linestyle=(0, (3, 1, 1, 1, 1, 1)), linewidth=6)
    
    ax.set(xlabel='data size', ylabel='time (s)', title="Gaussian blobs (dim=10)")
    plt.tick_params(axis='both',  labelsize=22)
    plt.savefig('results/exp1/gaussian_size_time.pdf', bbox_inches='tight')

    plt.figure(figsize=(12,8))
    plt.style.use('bmh')
    sns.set(font_scale=1.8)
    sns.set_style("whitegrid")
    plt.rcParams['axes.facecolor'] = 'white'

    ax = sns.lineplot(data=k_means_ar, x="x", y="y", marker='v', markersize=13, label='k-means++', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=dbscan_kdtree_ar, x="x", y="y", marker='s', markersize=13, label='DBSCAN (kd-tree)', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=dbscan_btree_ar, x="x", y="y", marker='o', markersize=13, label='DBSCAN (ball tree)', linestyle=":", linewidth=6)
    ax = sns.lineplot(data=hdbscan_ar, x="x", y="y", marker='<', markersize=13, label='HDBSCAN', linestyle="-", linewidth=6)
    ax = sns.lineplot(data=classix_ar, x="x", y="y", marker='*', markersize=17, label='CLASSIX', linestyle="--", linewidth=6)
    ax = sns.lineplot(data=quicks_ar, x="x", y="y", marker='p', markersize=17, label='Quickshift++', linestyle=(0, (3, 1, 1, 1, 1, 1)), linewidth=6)
    
    ax.set(xlabel='data size', ylabel='adjusted Rand index', title="Gaussian blobs (dim=10)")
    ax.set(ylim=(0, 1.1))
    plt.tick_params(axis='both',  labelsize=22)
    plt.savefig('results/exp1/gaussian_size_ar.pdf', bbox_inches='tight')