0

刚接触 Python 的同事,但在不使用 la b的情况下为 Iris 数据做散点矩阵时遇到了挑战。

我认为 for 循环可用于通过字面意义上的一个特征在另一个特征上绘制散点图。

我已将所有功能都设为 X。请告知我在下面的代码中做了什么混乱 - 我得到“x 和 Y 必须具有相同大小的错误”。否则你会怎么做?

for c in X:
    plt.scatter(c,X[:,0:4] )
    plt.show 

谢谢

4

1 回答 1

0

最后经过多次试验,这是我设法开发出对角线直方图的散点矩阵的答案之一。欢迎进行编辑以改进代码,特别是如何在散点图中添加图例?谢谢

fig = plt.figure( figsize=(8.5,8.5))
t= 1
for i in range (0,4):
    for j in range (0,4):
        if i==j:
            fig.add_subplot(4,4,t)
            plt.hist(X[:,i])
            plt.xlabel( feature_names[i] )
       
        else:
                    fig.add_subplot(4,4,t)
                    plt.scatter(X[:, i], X[:, j],cmap=plt.cm.Paired,c=Y, s=6)
                    plt.xlabel( feature_names[i] )
                    plt.ylabel( feature_names[j] )
                 #legend(feature_names[Y])
        t=t+1
于 2020-06-25T05:30:57.403 回答