def _plot_proto_symbol_space(coordinates, target_names, name, args):
# Reduce to 2D so that we can plot it.
coordinates_2d = TSNE().fit_transform(coordinates)
n_samples = coordinates_2d.shape[0]
x = coordinates_2d[:, 0]
y = coordinates_2d[:, 1]
colors = cm.rainbow(np.linspace(0, 1, n_samples))
fig = plt.figure(1)
plt.clf()
ax = fig.add_subplot(111)
dots = []
for idx in xrange(n_samples):
dots.append(ax.plot(x[idx], y[idx], "o", c=colors[idx], markersize=15)[0])
ax.annotate(target_names[idx], xy=(x[idx], y[idx]))
lgd = ax.legend(dots, target_names, ncol=4, numpoints=1, loc='upper center', bbox_to_anchor=(0.5,-0.1))
ax.grid('on')
if args.output_dir is not None:
path = os.path.join(args.output_dir, name + '.pdf')
print('Saved plot to file "%s"' % path)
fig.savefig(path, bbox_extra_artists=(lgd,), bbox_inches='tight')
else:
plt.show()
evaluate.py 文件源码
python
阅读 23
收藏 0
点赞 0
评论 0
评论列表
文章目录