首页 > 解决方案 > ValueError:使用 seaborn 时缓冲区的维数错误(预期为 1,得到 2)

问题描述

我正在尝试使用 seaborn 绘制计数图。但是,我不断收到错误消息:

 ValueError: Buffer has wrong number of dimensions (expected 1, got 2)

数据采用数组格式,如下所示:

      kmeans_updated_transform 
Output : array([[  69.86249185,  420.73371599,  293.97930338, ...,   75.0959945 ,
            1324.91605382,  695.82952194],
           [ 653.72679905,  173.0166009 ,  881.79444099, ...,  519.62763564,
             737.738956  ,  114.53013382],
           [ 137.60270124,  621.0421363 ,   93.48686268, ...,  271.48007915,
            1525.69688999,  896.4147582 ],
           ...,


pca_original_transform
Output: array([[ 9.43214091e+01, -1.89435531e+01,  1.07357663e+01, ...,
         1.23508040e-02, -4.93779143e-03,  4.85990628e-13],
       [ 6.82436757e+02,  3.43334711e+01,  9.96130809e+00, ...,
         1.91267574e-02,  8.14910013e-03, -1.38680181e-13],
       [-1.06579511e+02, -6.68715037e+00, -1.84056983e+00, ...,
        -1.90794427e-02, -4.22592696e-03, -2.87145744e-13],
       ...,

最后,我有一个名为 cat 的数据框。这是我正在使用的代码

ax = sns.countplot(x=pca_orignal_transform, hue=kmeans_updated_transform, data=cat)

为什么当我尝试绘制计数图时会引发错误。任何帮助,将不胜感激。谢谢

标签: pythonnumpydata-visualizationseaborn

解决方案


如果df是您的数据框,则通过将该数据框中的列名提供给countplot

ax = sns.countplot(x="columnname1", hue="columnname2", data=cat)

推荐阅读