gpt4 book ai didi

python - pyplot 带有单个数据点的条形图

转载 作者:太空宇宙 更新时间:2023-11-04 07:54:11 25 4
gpt4 key购买 nike

我有来自对照组和治疗组的数据。 matplotlib 是否能够创建一个条形图,其中条形高度是每个组的平均值与该组中的各个数据点重叠?我想可视化实际数据点的分布,类似于显示的 here .

我考虑过结合使用箱线图和散点图,但我的尝试没有成功。

最佳答案

这是一个完全按照您提到的方式执行的解决方案:用散点图覆盖条形图。

当然,您可以进一步调整绘图:绘图标题、轴标签、颜色、宽度、散点图的标记形状......

import matplotlib.pyplot as plt
np.random.seed(123)

w = 0.8 # bar width
x = [1, 2] # x-coordinates of your bars
colors = [(0, 0, 1, 1), (1, 0, 0, 1)] # corresponding colors
y = [np.random.random(30) * 2 + 5, # data series
np.random.random(10) * 3 + 8]

fig, ax = plt.subplots()
ax.bar(x,
height=[np.mean(yi) for yi in y],
yerr=[np.std(yi) for yi in y], # error bars
capsize=12, # error bar cap width in points
width=w, # bar width
tick_label=["control", "test"],
color=(0,0,0,0), # face color transparent
edgecolor=colors,
#ecolor=colors, # error bar colors; setting this raises an error for whatever reason.
)

for i in range(len(x)):
# distribute scatter randomly across whole width of bar
ax.scatter(x[i] + np.random.random(y[i].size) * w - w / 2, y[i], color=colors[i])

plt.show()

它将产生这张图

scatter-bar graph

关于python - pyplot 带有单个数据点的条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51027717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com