首页 > 解决方案 > 使用 Matplotlib Python 创建箱线图

问题描述

我正在尝试使用 Matplotlib 创建一个箱线图。

我已经做了2018年到2019年的数据清理。这就是我需要的数据。我想绘制 x(years), y(median price) - 带有 IQR 范围、Q1、Q3、max 和 min 等的箱线图。

但是我有一个错误,“ValueError:标签和 X 的尺寸必须兼容”

标签: pythonnumpymatplotlib

解决方案


你这里values_combined =[price2012, price2013,price2014]有一个列表。三个numpy数组的列表。而且我不确定标签的大小。显然存在不匹配。

如果您想按列或按行组合这些 numpy 数组,您可以尝试np.c_使用np.r_函数。

例子:

>>> x = np.random.randint(0,10,size=3)
>>> y = np.random.randint(0,10,size=3)
>>> z = np.random.randint(0,10,size=3)
>>>
>>> [x,y,z]
[array([7, 6, 4]), array([5, 3, 1]), array([3, 5, 2])]
>>> np.c_[x,y,z]
array([[7, 5, 3],
       [6, 3, 5],
       [4, 1, 2]])
>>> np.r_[x,y,z]
array([7, 6, 4, 5, 3, 1, 3, 5, 2])

要解决您的问题,您必须确保尺寸/形状labelsdata匹配。希望有帮助。


推荐阅读