Matplotlib:索引器错误:数组的索引太多

2024-10-06 07:15:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用散射函数来绘制numpy数组。代码如下: 在线mtp.散射,我得到了索引错误。在

numpy数组是[1。1三。三。1.1 1.1 1.3 1.3]

对应的颜色是['red'、'green'、'red'、'red']

错误消息: mtp.散射(X_traintest[:,0],X_traintest[:,1],s=170,c=Y_颜色集[:])
索引器错误:数组的索引太多

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()

Tags: numpy颜色错误npred数组printappend
2条回答

看起来X_traintest是一个一维数组,您试图提供多个一维索引。(即两个:[:, 0]

当输入大小不一致时会出现此错误。在

检查所有输入的长度,即

  • 列车试验[:,0]
  • 列车试验[:,1]
  • Y_颜色集[:]

另外,检查上述表达式在维数(1D)上是否相同

相关问题 更多 >