在y-log标度中的matplotlib stepfilled hist无法正确显示

当使用两个选项histt​​ype =’stepfilled’和log = True时,我在matplotlib中显示直方图时出现问题.我在matplotlib版本1.1.0中遇到此问题,发现它仍然存在于1.2.0版本中.

遗憾的是,我无权发布图片,但您可以使用以下简单代码查看此行为:

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

mu, sigma = 200, 25
x = mu + sigma*np.random.randn(10000)
n, bins, patches = plt.hist(x, 50, normed=1, histtype='bar',log=True)
plt.savefig("test1.png")
plt.clf()
n, bins, patches = plt.hist(x, 50, normed=1, histtype='stepfilled',log=True)
plt.savefig("test2.png")

第一个图正确显示,而在第二个案例中,使用选项histt​​ype =’stepfilled’而不是’bar’,没有.
有人有任何线索吗?

最佳答案 这是matplotlib中的一个漏洞.也许你可以模拟在第一个图形中操纵条形样式的stepfilled.

github上的问题:

> https://github.com/matplotlib/matplotlib/issues/196

点赞