pandas异常-'c' argument must eithe

2020-05-14  本文已影响0人  橘猫吃不胖

记录一个错误,关于plot.scatter的,在绘制散点图的时候出现的

这个错误困惑了我好久,后来,仔细看了文档,才发现为啥。

官网中有个例子:

df = pd.DataFrame([[5.1, 3.5, 0], [4.9, 3.0, 0], [7.0, 3.2, 1],
                   [6.4, 3.2, 1], [5.9, 3.0, 2]],
                  columns=['length', 'width', 'species'])
ax2 = df.plot.scatter(x='length',
                      y='width',
                      c='species',
                      colormap='viridis')

好的,到这里都没有问题,问题,就出在这个对于这个c的理解

就是这个,我没仔细看,以为根据传入的column name,就可以自动作为一个维度进行分类了,切换不同的颜色,

所以,当我把数据集改为下面这样的时候,我以为也是可以的:

df = pd.DataFrame([[5.1, 3.5, 'a'], [4.9, 3.0, 'a'], [7.0, 3.2, 'b'],
                   [6.4, 3.2, 'c'], [5.9, 3.0, 'c']],
                  columns=['length', 'width', 'species'])

就是species不是数字,变成字符串了,我想当然的以为,它可以自动去分配颜色,结果就报错了,上面一开始的错误,再仔细看了文档后才发现,

这里传入的是一个位置,是position,用来和colormap的颜色对应的,所以传入字符串是不行的,不行的,注意一下

上一篇 下一篇

猜你喜欢

热点阅读