Python : 一排三個子圖(二)

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
path11 = r"D:\ExperimentalData\Jain\multiCenterCluster.csv"
path12 = r"D:\ExperimentalData\Jain\centers.csv"
path21 = r"D:\ExperimentalData\Spiral\multiCenterCluster.csv"
path22 = r"D:\ExperimentalData\Spiral\centers.csv"
path31 = r"D:\ExperimentalData\Aggregation\multiCenterCluster.csv"
path32 = r"D:\ExperimentalData\Aggregation\centers.csv"


jain = np.array(pd.read_csv(path11,header=None,index_col=None))
jc = np.array(pd.read_csv(path12,header=None,index_col=None))
spiral = np.array(pd.read_csv(path21,header=None,index_col=None))
sc = np.array(pd.read_csv(path22,header=None,index_col=None))
aggregation = np.array(pd.read_csv(path31,header=None,index_col=None))
ac = np.array(pd.read_csv(path32,header=None,index_col=None))

font = {'family': 'Times New Roman', 'weight': 'normal', 'size': 20}
Size = 15
MarkerList = ['^', 'v', 's', 'o', 'D', 'v', '<', '>', '^', 'v', 's', 'o', 'D', 'v', '<', '>', '^', 'v', 's', 'o', 'D',
              'v', '<', '>']

fig = plt.figure(figsize=(20,4))#, facecolor = 'gray')
ax1 = fig.add_subplot(1,3,1)
Num = 6
Color = ['yellow'] * Num
Ecolor = ['black'] * Num
for i in range(6):
    e = []
    for j in range(len(jain)):
        if jain[j,2] == i:
            e.append(j)
    E = jain[e]
    plt.scatter(E[:, 0], E[:, 1], s=Size, marker=MarkerList[i])
plt.scatter(jc[:,0],jc[:,1],marker='*',s=300,c=Color,edgecolors=Ecolor,linewidths=0.5)
ax1.set_title('Jain',font)

ax2 = fig.add_subplot(1,3,2)
Num = 9
Color = ['yellow'] * Num
Ecolor = ['black'] * Num
for i in range(9):
    e = []
    for j in range(len(spiral)):
        if spiral[j,2] == i:
            e.append(j)
    E = spiral[e]
    plt.scatter(E[:, 0], E[:, 1], s=Size, marker=MarkerList[i])
# plt.scatter(spiral[:,0],spiral[:,1],c=spiral[:,2],s=Size)
plt.scatter(sc[:,0],sc[:,1],marker='*',s=300,c=Color,edgecolors=Ecolor,linewidths=0.5)
ax2.set_title('Spiral',font)

ax3 = fig.add_subplot(1,3,3)
Num = 21
Color = ['yellow'] * Num
Ecolor = ['black'] * Num
for i in range(21):
    e = []
    for j in range(len(aggregation)):
        if aggregation[j,2] == i:
            e.append(j)
    E = aggregation[e]
    plt.scatter(E[:, 0], E[:, 1], s=Size, marker=MarkerList[i])
# plt.scatter(aggregation[:,0],aggregation[:,1],c=aggregation[:,2],s=Size)
plt.scatter(ac[:,0],ac[:,1],marker='*',s=300,c=Color,edgecolors=Ecolor,linewidths=0.5)
ax3.set_title('Aggregation',font)
plt.show()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章