2

我需要在同一个图上绘制几个直方图。我喜欢以下代码生成的显示:

import random
import numpy
from matplotlib import pyplot

x = [random.gauss(3,1) for _ in range(400)]
y = [random.gauss(4,2) for _ in range(400)]

bins = numpy.linspace(-10, 10, 100)

pyplot.hist(x, bins, alpha=0.5)
pyplot.hist(y, bins, alpha=0.5)
pyplot.show()

此页面上提到了此代码:使用 matplotlib 同时绘制两个直方图 基本上我无法绘制相同类型的直方图,但数据看起来像:

y1=[20,33,54,34,22]
x1=[0,2,4,6,8]
y2=[28,31,59,14,12]
x2=[0,2,4,6,8]

使用上述代码,我无法让 y 轴超过 2.0,这很奇怪,但我一定是犯了一个愚蠢的错误。

谢谢。

4

1 回答 1

1

可能你正在寻找这个:

 pyplot.bar(x2,y2, color='b', width=2, alpha=0.5)
 pyplot.bar(x1,y1, color='r', width=2, alpha=0.5)
 pyplot.show()

在此处输入图像描述

于 2013-03-02T09:06:26.437 回答