我在here中找到了这张图片,但是按照相同的步骤之后,我没有得到轮廓。
我在堆栈溢出中看到了this个问题,但它在每个条形上都画了一条边,我只想要外轮廓。
如何绘制此外部轮廓? (我正在运行python 3)
答案 0 :(得分:3)
该图可能是使用不同(即较旧)的matplotlib版本制作的。从normed
的使用也可以看出这一点,在较新的版本中已不推荐使用。
在这里,您需要将edgecolor明确设置为黑色。
ec="k"
,或更长的edgecolor="black"
。
import numpy as np
import matplotlib.pyplot as plt
plt.style.use('seaborn-white')
x1 = np.random.normal(0, 0.8, 1000)
x2 = np.random.normal(-2, 1, 1000)
x3 = np.random.normal(3, 2, 1000)
kwargs = dict(histtype='stepfilled', alpha=0.3, density=True, bins=40, ec="k")
plt.hist(x1, **kwargs)
plt.hist(x2, **kwargs)
plt.hist(x3, **kwargs);
plt.show()