4

我最近将我的 seaborn 从 0.5.1 更新到了新的 0.6.0 版本。我一直在使用 seaborn 在 python notebook 中制作箱线图和小提琴图,现在我似乎无法再让我的代码工作了。Matplotlibplt.boxplot仍然适用于我的数据。特别是,当我有一组列表或数组的子集大小不同时,问题似乎就会发生。

例如:

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
x = np.array([1,3,4]), ([1,2])
plt.boxplot(x) #this works



 import numpy as np
 import matplotlib.pyplot as plt
 import seaborn as sns
 x = np.array([1,3,4]), ([1,2])
 sns.boxplot(x) #doesn't work

这是我尝试使用 seaborn 箱形图时遇到的错误

ValueError:箱线图统计列表和“位置”值的长度必须相同

在新的 seaborn 教程中,它说sns.boxplot应该采取一切措施plt.boxplot。有没有人在更新时遇到同样的问题?有没有办法使这项工作?如果没有,有没有办法同时安装 0.6.0 版本和 0.5.1 版本并在某些笔记本中调用特定版本?

4

1 回答 1

5

正如发行说明中所讨论的,分类图的 API 发生了一些变化。

在您的情况下,您只需将数组列表(技术上的元组)显式传递给data参数:

sns.boxplot(data=x)
于 2015-07-02T03:00:38.843 回答