Python-根据值的tSNE散点图和着色

时间:2019-05-24 13:36:11

标签: python matplotlib scikit-learn scatter-plot

我有一个高维数据,我使用tSNE将维数缩减为2维,然后使用matplotlib散点图进行绘制。

我的原始数据(numpy.ndarray)

我的标签类型(numpy.ndarray)

我正在根据标签着色散点图,该标签在某些迭代中具有错误值。假设我是根据连续值而不是类别着色,如何在图上显示图例?

以下是我的代码:  从sklearn.manifold导入TSNE

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches

data = np.loadtxt('x.csv', dtype=float, delimiter=' ')

x = data[:,0:5] #numpy.ndarray
error = data[:,6] #numpy.ndarray

model = TSNE(n_components=2, random_state=0)

tsne_embedding = model.fit_transform(x)

plt.scatter(tsne_embedding[:,0], tsne_embedding[:,1],c=error)
plt.title("Latent Variable T-SNE per Class")
plt.legend(list(np.unique(error)))

plt.scatter(tsne_embedding[:,0], tsne_embedding[:,1], c=list(np.unique(error)), s=50)

错误变量的输出如下: enter image description here

执行上面的代码,给我下图: enter image description here

0 个答案:

没有答案