【问题标题】:Turn off Matplotlib imshow interpolation when saved as PDF保存为 PDF 时关闭 Matplotlib imshow 插值
【发布时间】:2017-05-25 09:49:02
【问题描述】:

有没有办法在保存为 PDF 时关闭 Matplotlib 的 imshow 函数的插值?

编辑

运行以下代码:

import numpy as np
import matplotlib.pyplot as plt
image = np.random.random((200,200))
plt.imshow(image, interpolation='nearest')
plt.savefig('image.pdf')

将创建一个如下所示的 PDF:

放大将显示“像素”被插值:

有没有办法关闭插值?我正在使用 Matplotlib 2.0.2 和 Python 2.7.13。

谢谢!

【问题讨论】:

  • 不应该这样。如果在 imshow 中指定 interpolation="nearest",则保存的图形不会更改此设置,但 - 正如预期的那样 - 使用相同的插值。在任何情况下,您都应该提供一个可重现的示例,在这种情况下,显示相应的图像是有意义的,这样问题就会变得明显。
  • 你是如何制作这两个图的?请记住,这是一个关于编程的问答网站。您可能还想重读How to Askminimal reproducible example
  • 我无法重现此内容。 Here is a picture 生成的 pdf。
  • 感谢您的检查!你使用哪个 Matplotlib 版本?
  • Python 2.7.10 和 matplotlib 2.0.2。但问题可能不是 matplotlib 而是使用中的 pdf 查看器?

标签: python-2.7 matplotlib imshow


【解决方案1】:

我遇到了同样的问题,并且可以通过使用 interpolation=None 来解决。

【讨论】:

  • 以防万一。它必须没有冒号。 “无”不做这项工作。
猜你喜欢
  • 1970-01-01
  • 2015-08-09
  • 1970-01-01
  • 1970-01-01
  • 2013-04-12
  • 2018-12-27
  • 2013-10-19
  • 1970-01-01
  • 2012-08-16
相关资源
最近更新 更多