python - 为什么不是所有标签都显示在 matplotlib 图例中?
问题描述
我正在尝试使用 t-sne 方法在二维空间中可视化具有 20 个类的数据集的特征嵌入,但我的 matplotlib 图例缺少大部分标签。它应该显示 y 中的所有标签,但只显示前 7 个标签。我在这里缺少什么?
这是我的代码:
tsne_model = TSNE(n_iter=2000, n_components=2, random_state=123, perplexity=50)
tsne_transformed = tsne_model.fit_transform(pca_result_50)
sns.set_style('white')
f = plt.figure(figsize=(8, 8))
ax = plt.subplot(aspect='equal')
sc = plt.scatter(tsne_transformed[:, 0], tsne_transformed[:, 1], c=labels, cmap='tab20')
handles, _ = sc.legend_elements(prop='colors')
y = ['0 - Original', '1 - Original', '2 - Original', '3 - Original', '4 - Original', '5 - Original',
'6 - Original', '7 - Original', '8 - Original', '9 - Original','0 - Generated', '1 - Generated',
'2 - Generated', '3 - Generated', '4 - Generated', '5 - Generated',
'6 - Generated', '7 - Generated', '8 - Generated', '9 - Generated']
plt.legend(handles, y, loc='best')
plt.xlabel('t-sne 1')
plt.ylabel('t-sne 2')
plt.xlim(-25, 25)
plt.ylim(-25, 25)
ax.axis('tight')
解决方案
推荐阅读
- javascript - 通过在javascript中使用ckeditor获取存储在db中的带有html标签的数据
- c++ - 创建变量错误时的 SDL2 分段错误
- python - 编译后 Tkinter 和 Flask 集成不起作用
- c# - 在 Swagger 和控制台中打开 net core web api
- amazon-web-services - 使用 AWS Amplify 和 AWS Cognito 进行数据特定授权
- c# - localhost 当前无法处理此请求。HTTP 错误 500 - 对于 asp.Net Core
- flutter - 如何在颤动中以正确的顺序设置widgetSpan中文本之间的数字
- node.js - 语法错误节点JS
- python - 即使条件为假,循环也会在内部继续运行代码
- sql - SQL 与数组内的过滤器重叠