【发布时间】:2020-12-09 13:48:54
【问题描述】:
我正在尝试创建一个带有指定数字的箱线图,该数字表示该值在数据中出现的次数。
我有什么:
import numpy as np
import matplotlib.pyplot as plt
data = np.array([[[0, 1, 2, 3], [31, 84, 2, 1]], [[0, 1, 2], [17, 104, 21]], [[0, 1, 2, 3, 4], [17, 106, 61, 3, 1]]])
plt.boxplot([data[0][0], data[1][0], data[2][0]])
输出:
我想要什么:
- 第一个框:数据“0”出现 31 次,“1”出现 84 次等(所有框都相同)
- 这会改变四分位范围、中线等
我知道我可以这样做:(对于每个盒子)
merged_list_box1 = np.array([])
np.append(merged_list_box1, data[0][1][0]*31)
np.append(merged_list_box1, data[0][1][1]*84)
.
.
.
但是由于我拥有的数据集,1 个盒子的一些合并列表的长度将超过 500。我有大约 20 个这样的盒子。有没有更有效的方法?
提前致谢!
【问题讨论】:
标签: python numpy matplotlib plot graph