【问题标题】:How to plot a histogram with various variables in python?如何在python中绘制具有各种变量的直方图?
【发布时间】:2019-04-17 18:08:08
【问题描述】:

我有一个场景,我有一个数据集,其中包含自 2018 年以来印度与每支球队进行的 ODI 总比赛的结果。如果印度在与南非的 6 场比赛中赢了 5 场,那么“Ind1”变量的值为 5,SA = 1。同样,我存储了与所有其他球队进行的比赛的变量。现在我想将 Ind1 和 SA 的值绘制在一起,将 Ind2 和 Eng 的值绘制在一起,依此类推。

谁能帮我用直方图或python中的任何其他绘图技术来绘制这个!

plt.hist(Ind1, Sa, bins = 20, alpha = 0.5, c = 'blue')

预期的结果是绘制两个条形图,前两个条形图的变量为“Ind1”和“SA”,接下来的两个条形图与变量“Ind2”和“Eng”等一起绘制。我想要一个图表中的所有条形图,并且还在一起。

但我收到如下错误;

TypeError: hist() 为参数 'bins' 获得了多个值

【问题讨论】:

    标签: python matplotlib plot histogram


    【解决方案1】:

    根据documentationmatplotlib.pyplot.hist()的签名是:

    matplotlib.pyplot.hist(x, bins=None, range=None, density=None, weights=None, 累积=False, bottom=None, histt​​ype='bar', align='mid',orientation='垂直',rwidth=None,log=False,color=None,label=None,stacked=False,normed=None,*,data=None,**kwargs)

    因此,您为bins 传递了两个值:Sa(第二个位置参数)和20(关键字参数)。我对 pyplot 不是很熟悉,但您似乎打算这样做:

    plt.hist((Ind1, Sa), bins = 20, alpha = 0.5, c = 'blue')
    

    【讨论】:

      【解决方案2】:

      您必须将您的系列作为第一个参数传递到某种容器(元组、列表等)中。您必须为每个系列指定颜色或让它使用默认值。

      import numpy as np
      import matplotlib.pyplot as plt
      
      Ind1 = np.random.randn(1000)
      Sa = np.random.randn(1000)
      
      plt.hist([Ind1, Sa], bins = 20, alpha = 0.5)
      plt.show()
      

      【讨论】:

        猜你喜欢
        • 2018-05-07
        • 2020-11-04
        • 2012-09-25
        • 2017-02-09
        • 2020-08-10
        • 1970-01-01
        • 1970-01-01
        • 2019-12-16
        • 1970-01-01
        相关资源
        最近更新 更多