Lia*_*iam 5 python plot matplotlib
我正在尝试以对数比例在直方图中绘制输入数据(以快速查看这是否符合幂律),但我在以我想要的方式输出时遇到了麻烦。我正在使用 Python,更具体地说是 matplotlib/numpy 库:
thebins = N.linspace(min_data.min(),min_data.max(),int(sys.argv[len(sys.argv)-1]))
thebins = N.log(thebins)
bar_min = plt.hist(min_data,bins=thebins,alpha=0.40,label=['Minimal Distance'],log=True)
Run Code Online (Sandbox Code Playgroud)
min_data 是我的一维数据数组,前两行用于创建 bin,然后将它们放入对数刻度中。最后一行用于用 log y 刻度“填充”箱/直方图。
图形输出为:

这可能看起来很挑剔,但我对不同厚度的箱子不满意,在我看来,数据更难读取,甚至可能被误读。并非所有对数直方图都具有相同宽度的 bin,我相信它可以在 Python 中完成;你有想法改变我的代码来到达那里吗?
先感谢您 ;)
应该很简单:我只需要获取 x 轴数据的对数,然后通过 y 轴参数“log=True”构建直方图。