首页 > 解决方案 > matplotlib imshow(aspect='auto') 产生高度不均匀的行

问题描述

基本的 imshow 情节

import numpy as np
import matplotlib.pyplot as plt

aaa = np.arange(800).reshape((80, 10)) % 6

fig, ax = plt.subplots(figsize=(3, 10))
img = ax.imshow(aaa, aspect='auto')

plt.show()

生成以下图像:

在此处输入图像描述

在非常仔细的检查下,第二排明显比第一排和第三排厚。我试图将图像保存为(.png)计数像素,并保存为(.pdf)在浏览器中检查它。在这两种情况下,我都必须得出结论,这些行确实具有不均匀的高度。为什么?如何解决这个问题?这是我实际打算发布的图形的最小示例,效果看起来更糟。我希望 aspect='auto' 对整个图像应用均匀拉伸......

标签: pythonmatplotlib

解决方案


推荐阅读