我正在尝试创建数据列的直方图并以对数方式绘制它(y-axis
),但我不确定为什么以下代码不起作用:
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.yscale('log')
添加Log=true
行plt.hist
,我也尝试过ax.set_yscale('log')
,但似乎没有任何效果。我要么得到一个空图,要么y-axis
确实是对数的(代码如上所示),但没有绘制数据(没有箱)。