【问题标题】:Elbow Plot - ValueError: x and y must have same first dimension [duplicate]Elbow Plot - ValueError:x 和 y 必须具有相同的第一维
【发布时间】:2020-09-10 08:50:49
【问题描述】:

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

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)

问题可能出在哪里?

【问题讨论】:

    标签: python python-3.x matplotlib


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      变量 wcss 似乎是一个标量而不是一个向量。

      如果不知道您是如何创建变量 wcss 的,我们无法真正回答这个问题。但是您可能应该看看那个变量。

      【讨论】:

        猜你喜欢
        • 2016-11-10
        • 1970-01-01
        • 2017-08-20
        • 1970-01-01
        • 1970-01-01
        • 2022-01-09
        • 2015-06-01
        • 1970-01-01
        相关资源
        最近更新 更多