【问题标题】:How to specify y values in histogram?如何在直方图中指定 y 值?
【发布时间】:2018-07-07 05:03:03
【问题描述】:

我正在尝试编写一个程序,它接收两个数组,一个用于 y 值,另一个用于 bin,并生成一个直方图,将 y 值放入相应的 bin 范围内。

例如当 0 时 y = 0.2

我没有找到任何方法来使用 matplotlib 对直方图中的 y 值进行分隔,或者有可能这样做吗?

附言。我可以使用条形图这样做吗?但我没有找到在条形图中指定 bin 的方法,谢谢!

【问题讨论】:

  • 问题不是很清楚。直方图聚合了一些数据,因此您根本不指定任何 y 值;而y 是一些分箱的结果。另一方面,如果您已经拥有某个xy 值,那么您只需要针对x 绘制y(例如,作为条形图)。但是在后一种情况下,不清楚“bin”指的是什么,因为每个x 值都有其y 对应部分。我想如果你展示一些正在使用的数据示例并解释预期的结果会有所帮助。

标签: python-3.x numpy matplotlib histogram


【解决方案1】:

我认为您需要一个 bar 绘图,您可以在其中指定 x 值和“高度”。例如:

import matplotlib.pyplot as plt
import numpy as np

a=np.array([1,2,3])
b=np.array([4,5,6])

plt.bar(a,b)

plt.show()

例如,您可以使用if 条件填充数组:

a=np.array([0.01,0.15,0.18,0.05,0.15])
b=np.zeros(len(a))

for i in range(len(a)):
    if a[i] > 0. and a[i] < 0.1:
        b[i] = 0.5
    elif a[i] > 0.1 and a[i] < 0.2:
        b[i] = 0.2

【讨论】:

  • 您好,还有一个问题,如何使用 bar 实现与直方图中 bin 相同的功能?
  • 什么功能?
猜你喜欢
  • 1970-01-01
  • 2021-10-24
  • 1970-01-01
  • 1970-01-01
  • 2020-12-26
  • 1970-01-01
  • 2022-01-20
  • 1970-01-01
  • 2021-06-13
相关资源
最近更新 更多