【问题标题】:Relative Frequency Histogram Where Vertical Axis is Frequency Python垂直轴为频率 Python 的相对频率直方图
【发布时间】:2015-10-11 04:04:23
【问题描述】:

如何创建以频率为纵轴的相对频率直方图?我希望它将每个分布标准化为统一,并使其成为相对的 bin 到 bin。下面的代码用于情节。我也对 matplotlib 解决方案感兴趣。

我下面的代码使用 Python 和 Plotly 创建了一个水平的相对频率图。

data = Data([
    Histogram(
        x=[x/float(114767406) for x in yp_views],
        name='Relative Frequency')])
fig = Figure(data = data)
py.iplot(fig)

我尝试将 x 更改为 y。就这么简单。见下文。

data = Data([
    Histogram(
        y=[x/float(114767406) for x in yp_views],
        name='Relative Frequency')])
fig = Figure(data = data)
py.iplot(fig)

这使我的图表成为水平条。我想要垂直条,x 轴是视图,y 轴是频率。

【问题讨论】:

    标签: python matplotlib histogram plotly


    【解决方案1】:

    matplotlib 解决方案很简单:使用normed 标志:

    import matplotlib.pyplot as plt
    plt.hist(yp_views, bins='auto', normed=True)
    

    hist 方法调用numpy.histogram,因此您可以传递bins='auto' 等选项,它们是numpy.histogramdocumented there 的选项。

    【讨论】:

    • normed 已弃用。您可以改用density。它使积分(不是总和)等于 1。
    • 如果积分(不一定是总和)等于1,那么它不一定是相对频率。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    • 2015-02-21
    • 2022-10-14
    • 2018-01-26
    • 2019-12-17
    • 2013-06-29
    • 2011-08-14
    相关资源
    最近更新 更多