我知道破折号长度和间隙大小可以在plt.plot中设置,但有没有办法在plt.hist中这样做?这就是我的命令:
plt.hist(x, bins=5, range=(7.,11.), facecolor='None', linestyle='dashed', linewidth=2, normed=1)
答案 0 :(得分:0)
set_dashes
是一个以点为单位开启和关闭长度序列的函数。
因此set_dashes((3,3))
应生成与set_dashes((15,15))
不同的内容。
现在,对于hist
无效的numpy
,因为设置线属性最多会改变轮廓的外观。
你可以做的是
histogram
的{{1}}函数;无论如何,它被pyplot的hist
使用,然后stem
绘制结果。答案 1 :(得分:0)
另一个答案指出set_dashes方法不适用于直方图。但是,您可以通过将破折号元组直接传递给“ linestyle”来实现对线型的精细控制(请参见https://matplotlib.org/3.1.0/gallery/lines_bars_and_markers/linestyles.html的文档)
在您的示例中,您可以按如下所示在链接中实现“松散虚线”样式
x=[7]*10
plt.hist(x, bins=5, range=(7.,11.), ec='k', facecolor='None',
linewidth=2, normed=1, linestyle=(0,(5,10)))
这对我适用于matplotlib 3.0.3。请注意,我还必须添加ec='k'
才能使直方图的轮廓完全出现...