【发布时间】:2022-06-30 00:51:17
【问题描述】:
我有一个大小为 100x2 的向量 X 和一个长度为 100 的向量 y ={1, -1} 中的相应二进制标签。我想用 s.t. 绘制分散数据。我得到了轴上的特征,数据点的颜色对应于一个标签,例如对于给定的数据点,红色为 -1,黄色为 1。
我一直在研究 matplotlib 和 fcn 散点图,但是它只接受一个特征向量及其标签。
如果有任何帮助,我将不胜感激。
【问题讨论】:
我有一个大小为 100x2 的向量 X 和一个长度为 100 的向量 y ={1, -1} 中的相应二进制标签。我想用 s.t. 绘制分散数据。我得到了轴上的特征,数据点的颜色对应于一个标签,例如对于给定的数据点,红色为 -1,黄色为 1。
我一直在研究 matplotlib 和 fcn 散点图,但是它只接受一个特征向量及其标签。
如果有任何帮助,我将不胜感激。
【问题讨论】:
您可以使用seaborn(或matplotlib)轻松完成此操作。下面是代码。
>> import numpy as np
>> X = np.random.randint(100, size=(100, 2))
>> Y = np.random.choice([0, 1], size=(100))
>> X
array([[11, 47],
[23, 2],
[91, 14],
[65, 32],
[81, 78],
....
>> Y
array([0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1,
0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0,
1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1,
0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1,
1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1])
使用 Seaborn 散点图
import seaborn as sns
sns.scatterplot(x=X[:,0], y=X[:,1], hue=Y)
输出 sns 散点图
【讨论】: