【问题标题】:Bottom border on matplotlib bar plotmatplotlib 条形图的底部边框
【发布时间】:2017-06-23 17:50:30
【问题描述】:

所以我正在尝试使用 matplotlib 制作条形图,没有“框”或轴刻度,如下所示:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.bar([1, 2], [150, 250], edgecolor = 'black', linewidth = 1, \
       color = '#EEFFCC')

ax.set_xticks([1, 2])
plt.tick_params(bottom = False, left = False)
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.spines['left'].set_visible(False)
ax.spines['bottom'].set_visible(False)

特别是,我不想要“框”,但我希望栏有黑色边框。但是,当我制作情节时,它看起来像这样:

并且底部边框不存在(表面上是因为我摆脱了底部的“盒子”脊椎)。如果我尝试设置 linewidth = 2 或更高,则边框存在,但比顶部、左侧或右侧边框薄很多。

无论如何,我可以让底部边框显示的长度与栏的顶部/左侧/右侧边框的长度相同吗?谢谢!

【问题讨论】:

    标签: python matplotlib


    【解决方案1】:

    如果线条(或其他任何东西)超出 matplotlib 中的图形范围,它们将被剪裁(这发生在你的盒子上)。如果你强制 then 不被剪辑,那么它会起作用。

    更改相关行:

    ax.bar([1, 2], [150, 250], edgecolor = 'black', linewidth = 1, \
           color = '#EEFFCC', clip_on=False)
    

    提供:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-01
      • 2015-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多