【发布时间】:2016-09-17 00:17:10
【问题描述】:
有没有办法为matplotlib的hist()函数的histtype配置默认参数?默认行为是制作条形图类型的直方图,我基本上从不想查看,因为比较具有显着重叠的多个分布是可怕的。
如果它在某种程度上相关,我希望获得的默认行为是拥有histtype='step'。
【问题讨论】:
标签: python matplotlib data-analysis
有没有办法为matplotlib的hist()函数的histtype配置默认参数?默认行为是制作条形图类型的直方图,我基本上从不想查看,因为比较具有显着重叠的多个分布是可怕的。
如果它在某种程度上相关,我希望获得的默认行为是拥有histtype='step'。
【问题讨论】:
标签: python matplotlib data-analysis
感谢您提示我查看此内容,因为我也更喜欢 'step' 风格的直方图!我通过进入 matplotlib 源代码解决了这个问题。我用的是anaconda,所以它位于anaconda/lib/site-packages/python2.7/matplotlib。
为了更改直方图样式,我编辑了两个文件。假设当前目录是matplotlib/,然后打开axes/_axes.py 并在那里找到hist() 函数(它在我机器上的第5690 行,matplotlib 版本1.5.1)。您应该在那里看到 histtype 参数。将其更改为 'step'。
现在打开 pyplot.py 并再次找到 hist() 函数并对 histtype 参数进行相同的更改(版本 1.5.1 和我的机器上的第 2943 行)。有评论说不编辑这个函数,但我只是在我没有编辑axes/_axes.py时才发现这是一个问题。
这对我有用!另一种选择是自己编写一个围绕hist() 的包装器来更改默认参数。
【讨论】: