也许使用plt.annotate:
import numpy as npimport matplotlib.pyplot as pltN = 10data = np.random.random((N, 4))labels = ['point{0}'.format(i) for i in range(N)]plt.subplots_adjust(bottom = 0.1)plt.scatter( data[:, 0], data[:, 1], marker='o', c=data[:, 2], s=data[:, 3] * 1500, cmap=plt.get_cmap('Spectral'))for label, x, y in zip(labels, data[:, 0], data[:, 1]): plt.annotate( label, xy=(x, y), xytext=(-20, 20), textcoords='offset points', ha='right', va='bottom', bbox=dict(boxstyle='round,pad=0.5', fc='yellow', alpha=0.5), arrowprops=dict(arrowstyle = '->', connectionstyle='arc3,rad=0'))plt.show()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)