使用histtype='step'
将2D数组传递给Matplotlib的直方图函数似乎以相反的顺序绘制列(至少从我从左到右的偏见西方视角)。
以下是一个例子:
import matplotlib.pyplot as plt
import numpy as np
X = np.array([
np.random.normal(size=5000),
np.random.uniform(size=5000)*2.0 - 1.0,
np.random.beta(2.0,1.0,size=5000)*3.0,
]).T
trash = plt.hist(X,bins=50,histtype='step')
plt.legend(['Normal','2*Uniform-1','3*Beta(2,1)'],loc='upper left')
产生这个:
运行matplotlib版本2.0.2,python 2.7
答案 0 :(得分:4)
为了保持"标签"和图例元素实例在一起, 最好在艺术家创作时指定标签,或者通过 调用
set_label
方法 艺术家
我建议使用hist
的label
关键字参数:
字符串或匹配多个数据集的字符串序列
结果是:
import matplotlib.pyplot as plt
import numpy as np
X = np.array([
np.random.normal(size=5000),
np.random.uniform(size=5000)*2.0 - 1.0,
np.random.beta(2.0,1.0,size=5000)*3.0,
]).T
trash = plt.hist(X,bins=50,histtype='step',
label=['Normal','2*Uniform-1','3*Beta(2,1)'])
plt.legend(loc='upper left')
plt.show()