【问题标题】:Remove grey background borders in matplotlib figure删除 matplotlib 图中的灰色背景边框
【发布时间】:2012-09-27 16:14:05
【问题描述】:

我只想在 matplotlib 图中显示绘图图形(或 imshow)。我可以用 pylab.axis('off') 删除轴,但是图中我仍然有一些灰色边框

我举个例子。我想全部删除,只保留 imshow 域(并保持缩放可用)。

非常感谢。

【问题讨论】:

  • 如果fig 是您创建的图形,fig.patch.set_alpha(0.0) 有帮助吗?
  • 如果您正在谈论以透明背景保存图形,请参阅@unutbu 的评论。否则,必须有某种背景颜色。您可以使用fig.set_facecolor('white')(或您喜欢的任何其他颜色)设置它。
  • 似乎不需要任何类型的背景颜色: fig.set_facecolor('None') 工作正常。
  • fig.set_facecolor('None') 不会删除这个区域! fig.patch.set_alpha(0.0)..!

标签: python matplotlib


【解决方案1】:

在您的情况下,您可能需要重新调整图形窗口的形状以适应内容的形状。对于方形窗口,您可以使用:

fig = figure(figsize=(6, 6))  # width and height in inches
fig.tight_layout(pad=0.5)     # distance betweeen the axis and the figure edge 

如果需要,请确保为轴标签保留一些空间。如果您只想更改背景颜色,@JoeKington 的评论就是答案。

http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.tight_layout

【讨论】:

  • 它减少了一点。但是对我来说它仍然很大......没有办法将它完全从窗口中移除?
  • 它在右侧减少了一点,但我失去了图中显示的居中。它还使 zoom_rect 工具使图形大小和显示位置不稳定......奇怪!
  • 你能发布你的代码或类似的代码吗?也许您想要的图像也可以提供帮助。
【解决方案2】:

试试 margins() 函数(也是一个轴方法): http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.margins

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-26
    • 2014-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-27
    • 1970-01-01
    • 2016-01-24
    相关资源
    最近更新 更多