关于python中plt制图的问题,如何将Bunch中高维度的数组可视化下?

x_dr.shape
(24261, 2)

数据其中 target有12类

N = 12
y = np.random.rand(N)

plt.scatter(x_dr[:,0],x_dr[:,1],c=y)
plt.show()

报错'c' argument has 2 elements, which is not acceptable for use with 'x' with size 24261, 'y' with size 24261.

  我已经将原高维度数组降维至2维数组,但是绘图时依旧需要我提供24261大小的Color值,有办法将color值设为target类型大小么?

 

# 你数据中target应该是个分类变量吧, 直接用可以处理分类变量的作图就可以

# 用pandas, 颜色需要是数值
x_dr.plot.scatter(x='x轴变量',y='y轴变量',c='颜色变量')

# 方法2 如果颜色是分类变量
import seaborn as sns
sns.scatterplot(x="x轴变量", # x轴
                y="y轴变量",# y轴
                hue="颜色变量",   # 颜色分类
                palette='Spectral_r', # 调色盘
                sizes=(10, 200),      # 大小区间
                data=x_dr)
# 方法3
import pandas_bokeh
x_dr.plot_bokeh.scatter(
    x="x轴变量",
    y="y轴变量",
    category="颜色",  # 作为分类的字段列
    title="")

参考下这个:

matplotlib画点-Python-CSDN问答

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y