我正在尝试使用 matplotlib 中的 imshow() 函数在 177 X 177 网格中绘制颜色值。当我在一个小的(30X30)网格(即我设置width = 30
)上运行以下代码时,它生成的图像具有漂亮、大小均匀的正方形。当我在更大的网格(150X150)上运行它时,正方形的比例不均匀。有些在一个或两个维度上拉伸。这是我正在使用的代码的简化版本:
grid = [[]]*width
for i in range(width):
grid[i] = [[]]*width
for j in range(width):
grid[i][j] = (random(), random(), random())
plt.imshow(grid, interpolation="none", aspect=1)
plt.savefig("test.png")
知道如何使网格均匀吗?我已经尝试了这里讨论的所有纵横比的东西,但它似乎并没有解决问题。我正在使用 Python 2.7.6 和 matplotlib 1.3.1 版。
编辑:这是一张图片,显示了如果我一直放大,大网格中的单元格是什么样子。这是使用稍微不同的着色函数获得的,其中 9 个单元格的簇通过增加色调来着色。这更清楚地显示了不均匀的形状。如果你愿意,我可以包含代码,但我会得到与(更简单的)随机代码相同的行为。
这是我使用小网格时的样子(再次放大):