弯头图 - ValueError:x 和 y 必须具有相同的第一维度

我想为从 Excel 文件读取的预处理数据集生成肘部图。在下一步中,我想使用 matplotlib 包中的绘图方法生成肘部图。执行代码后我得到以下错误:


ValueError: x and y must have same first dimension, but have shapes (10,) and (1,)

代码如下所示:


plt.plot(range(1, 11), wcss, linewidth = 4, color = 'black', marker = 'D', markersize = 10)

plt.title('The Elbow Method', family = 'Arial', fontsize = 14, color = 'black')

plt.xlabel('Number of Clusters', family = 'Arial', fontsize = 12, color = 'black')

plt.ylabel('WCSS', family = 'Arial', fontsize = 12, color = 'black')

plt.xticks(fontsize = 12, color = 'black')

plt.yticks(fontsize = 12, color = 'black')

plt.grid(which = 'both', color = 'black', axis = 'x', alpha = 0.5)

问题可能出在哪里?


慕斯709654
浏览 284回答 2
2回答

MMMHUHU

请注意,在 x 轴上,您正在绘制 10 个点(即范围(1,11)),但似乎在您的 wccs 变量中只有一个值,您必须匹配 x 和 y 的数字,不能有 1 “y”代表十个不同的“x”。根据您的需要重新查看并调整 wccs 中的范围或值。

桃花长相依

变量 wcss 似乎是标量而不是向量。如果不知道如何创建变量 wcss,我们就无法真正回答这个问题。但你可能应该看看这个变量。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python