我试图用散射函数绘制numpy数组。以下是代码: 在线mtp.scatter,我得到索引错误。
numpy数组是[1. 1. 3. 3. 1.1 1.1 1.3 1.3]相应的颜色是['红色','绿色','红色','红色']
错误讯息:
mtp.scatter(X_traintest [:,0],X_traintest [:,1],S = 170,C = Y_colorset [:])
IndexError:数组
X_traintest=np.array([[]])
X_traintest=np.append(X_traintest, X_trainset)
num1=len(X_trainset)
num2=len(X_testset)
for i in range (num2):
X_traintest=np.append(X_traintest,X_testset[i], axis=0)
emptarray=np.zeros(num1)
for j in range (num1):
emptarray[j]=mindist(X_testset[i], X_trainset[j])
print emptarray
min_index=np.argmin(emptarray)
Y_colorset.append(Y_colorset[min_index])
print X_traintest
print Y_colorset
mtp.figure()
mtp.scatter(X_traintest[:,0],X_traintest[:,1],s=170,c=Y_colorset[:])
mtp.show()
答案 0 :(得分:0)
看起来X_traintest
是一维数组,并且您尝试提供多个维度索引。 (即两个:[:, 0]
)
答案 1 :(得分:0)
当输入大小不一致时会出现此错误。
检查所有输入的长度,即
另外,检查上述每个表达式在维度(1D)中是否相同