# -- coding: utf-8 import pandas as pd import matplotlib.pyplot as plt import numpy as np df=pd.read_csv(r"C:\Users\WBL\Desktop\node2vec-master\karate--node2vec.embeddings.csv") # r为转义字符 # print(df.head()) # print(df["label"]) fig,ax = plt.subplots(figsize = (8,5),dpi = 70) #figsize:宽和高比例,dpi:分辨率 # 着色 categories = np.unique(df['category']) colors = [plt.cm.tab10(i/float(len(categories)-1)) for i in range(len(categories))] for i, category in enumerate(categories): plt.scatter('x', 'y',data=df.loc[df.category==category, :],s=300, cmap=colors[i], label=str(category)) # 为每个点添加标签,一些形如(x轴,y轴,标签)的元组,水平及垂直位置,背景颜色 for x, y, tex in zip(df["x"],df["y"],df["label"]): t = plt.text(x, y,tex, horizontalalignment='center', verticalalignment='center', fontdict={'color':'black'}) plt.gca().spines["top"].set_alpha(.9) #设置最顶那条线的透明度 plt.gca().spines["bottom"].set_alpha(.3) plt.gca().spines["right"].set_alpha(.3) plt.gca().spines["left"].set_alpha(.3) # ax.set_xlabel("x",fontsize=15) # ax.set_ylabel("y",fontsize=15) # ax.set_title("karate--node2vec.embeddings",fontsize=20) plt.title('karate--node2vec.embeddings', fontdict={'size':20}) plt.grid(linestyle='--', alpha=0.5) plt.show()
label | x | y | category |
34 | 0.354721 | -1.20694 | d |
1 | -0.6124 | -1.10984 | b |