如何在直方图中指定y值?

时间:2018-07-07 05:03:03

标签: python-3.x numpy matplotlib histogram

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

例如当0 时y = 0.2

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

Ps。我可以使用条形图吗?但是我找不到在条形图中指定垃圾箱的方法,谢谢!

1 个答案:

答案 0 :(得分:0)

我认为您需要一个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()

enter image description here

例如,您可以使用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