刚接触 Python 的同事,但在不使用 la b的情况下为 Iris 数据做散点矩阵时遇到了挑战。
我认为 for 循环可用于通过字面意义上的一个特征在另一个特征上绘制散点图。
我已将所有功能都设为 X。请告知我在下面的代码中做了什么混乱 - 我得到“x 和 Y 必须具有相同大小的错误”。否则你会怎么做?
for c in X:
plt.scatter(c,X[:,0:4] )
plt.show
谢谢
刚接触 Python 的同事,但在不使用 la b的情况下为 Iris 数据做散点矩阵时遇到了挑战。
我认为 for 循环可用于通过字面意义上的一个特征在另一个特征上绘制散点图。
我已将所有功能都设为 X。请告知我在下面的代码中做了什么混乱 - 我得到“x 和 Y 必须具有相同大小的错误”。否则你会怎么做?
for c in X:
plt.scatter(c,X[:,0:4] )
plt.show
谢谢
最后经过多次试验,这是我设法开发出对角线直方图的散点矩阵的答案之一。欢迎进行编辑以改进代码,特别是如何在散点图中添加图例?谢谢
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