使用给定的x和y值绘制直方图

kra*_*zzy 6 python histogram

我试图绘制一个直方图,将每个x值与图中的y值对齐.我曾尝试使用多种资源,但遗憾的是我找不到任何东西.这是我编写直方图的最好方法.

x = (1,2,3,4,5)
y = (1,2,3,4,5)

h=plt.hist(x,y)
plt.axis([0, 6, 0, 6])
plt.show()
Run Code Online (Sandbox Code Playgroud)

我想要一个看起来像下面图像的图形,而不是x轴上的图形:

在此输入图像描述

Sah*_*l M 13

从你的情节和初始代码,我可以收集你已经有2个向量x和y的bin和频率值.在这种情况下,您将只绘制这些值的条形图,而不是使用plt.hist命令的直方图.您可以执行以下操作:

import matplotlib.pyplot as plt

x = (1,2,3,4,5)
y = (1,2,3,4,5)

plt.bar(x,y,align='center') # A bar chart
plt.xlabel('Bins')
plt.ylabel('Frequency')
for i in range(len(y)):
    plt.hlines(y[i],0,x[i]) # Here you are drawing the horizontal lines
plt.show()
Run Code Online (Sandbox Code Playgroud)

带有箱子和价值观的条形图