【发布时间】:2016-06-23 17:19:55
【问题描述】:
我正在使用 Python 中的 Matplotlib 和 matplotlib.bar() 函数绘制直方图。这给了我这样的情节:
我正在尝试生成一个直方图,它只绘制每个条的上限和不直接与另一个条的边框共享空间的边,更像这样:(我使用 gimp 编辑了这个)
如何使用 Python 实现这一点?使用matplotlib 的答案更可取,因为这是我最有经验的,但我愿意接受任何使用 Python 工作的东西。
对于它的价值,这里是相关代码:
import numpy as np
import matplotlib.pyplot as pp
bin_edges, bin_values = np.loadtxt("datafile.dat",unpack=True)
bin_edges = np.append(bin_edges,500.0)
bin_widths = []
for j in range(len(bin_values)):
bin_widths.append(bin_edges[j+1] - bin_edges[j])
pp.bar(bin_edges[:-1],bin_values,width=bin_widths,color="none",edgecolor='black',lw=2)
pp.savefig("name.pdf")
【问题讨论】:
-
查看
stepfilled类型直方图,将facecolor设置为白色——matplotlib.org/examples/statistics/… -
我的数据已经被分箱了,我无法访问原始的、未分箱的数据,所以我认为我不能使用
pyplot.hist。
标签: python matplotlib histogram