【发布时间】: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 Ask 和minimal reproducible example。
-
我无法重现此内容。 Here is a picture 生成的 pdf。
-
感谢您的检查!你使用哪个 Matplotlib 版本?
-
Python 2.7.10 和 matplotlib 2.0.2。但问题可能不是 matplotlib 而是使用中的 pdf 查看器?
标签: python-2.7 matplotlib imshow