在Python中使用对数y轴分箱

20 浏览
0 Comments

在Python中使用对数y轴分箱

我试图创建一个数据列的直方图,并对其进行对数化的绘制(y轴),但不确定为什么以下代码不起作用:

import numpy as np
import matplotlib.pyplot as plt
data = np.loadtxt('foo.bar')
fig = plt.figure()
ax = fig.add_subplot(111)
plt.hist(data, bins=(23.0, 23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0))
ax.set_xlim(23.5, 28)
ax.set_ylim(0, 30)
ax.grid(True)
plt.yscale('log')
plt.show()

我还尝试在`plt.hist`行中添加`Log=true`而不是`plt.yscale('log')`,还尝试过`ax.set_yscale('log')`,但似乎都不起作用。要么得到一个空的图,要么`y轴`确实是对数化的(如上所示的代码),但没有绘制任何数据(没有条柱)。

0