解决seaborn报错ValueError: zero-size array to reduction

tech2024-03-16  64

首先说结论:错在matplotlib,降低它的版本就好。

在使用seaborn完成机器学习绘图时,产生了一个很奇怪的报错,我的使用的代码如下:

import seaborn as sns sns.scatterplot( x='var1', y='var2', hue='var3', data=dataset, )

在执行上述代码时,检验了数据集、数据逻辑等无误的情况下,还是会有如下报错:

ValueError: zero-size array to reduction operation minimum which has no identity

尝试了很多网上的办法,还是没有效果,更换了很多seaborn库的版本,也不行,最后偶然发现,注释掉hue这个参数,就可以正常运行了。因此,猜测很可能不是我的数据集或逻辑问题,也不是seaborn包的问题,可能是和其他的绘图库产生了冲突。

sns.scatterplot( x='var1', y='var2', # hue='var3', data=dataset, )

果然,当我把matplotlib从3.3.1替换成3.2.2,这段代码就不报错了。可能是matplotlib最新版本有bug,因为seaborn是基于matplotlib建立的。

最新回复(0)