我正在尝试以对数 - 对数比例绘制直方图中的输入数据(以便快速查看这是否符合幂律),但我输出的方式有问题。我正在使用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)
min_data是我的1d数据数组,两个第一行用于创建bin,然后将它们放在日志范围内。最后一行是用log y刻度“填充”箱/直方图。
图形输出为:
看起来很挑剔,但我不满足于使用不同厚度的垃圾箱,在我看来,数据更难阅读,甚至可能被误读。并非所有的log-log直方图都有相同的宽度区域,我相信它可以在Python中完成;你有想法改变我的代码去那里吗?
提前谢谢你;)
应该是一个nobrainer:我只需要记录x轴的数据,然后构建直方图,为y轴传递参数“log = True”。