Python 如何使用matplotlib.pyplot更改子地块的宽高比?

Python 如何使用matplotlib.pyplot更改子地块的宽高比?,python,matplotlib,plot,Python,Matplotlib,Plot,如果运行以下代码 import matplotlib.pyplot as plt import matplotlib.gridspec as gridspec a=[[1,2,3],[4,4,4]] gridspec.GridSpec(2,1) plt.subplot2grid((2,1), (0,0), colspan=2, rowspan=1) plt.figure(figsize=(10, 5)) plt.imshow(a) plt.savefig('fig.png',bbox_inche

如果运行以下代码

import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
a=[[1,2,3],[4,4,4]]
gridspec.GridSpec(2,1)
plt.subplot2grid((2,1), (0,0), colspan=2, rowspan=1)
plt.figure(figsize=(10, 5))
plt.imshow(a)
plt.savefig('fig.png',bbox_inches='tight')
我得到了下面的图片。如何将子地块的宽高比设置为1:2,使其更长

基本上,如何做到这一点:

默认情况下,matplotlib以1:1的纵横比显示图像,即每个像素的宽度与高度相同。纵横比定义为高度/宽度。您可以设置
aspect=2
以获得像素高度为宽度两倍的图像

plt.imshow(a, aspect=2)

非常感谢你。因此,这与
gridspec
figsize
无关?当然,与子地块方面无关,您可以使用gridspec定位子地块或更改地物大小。对于问题中的简单问题,aspect和gridspec或figsize之间似乎没有关系。(除此之外,使用图形大小是有意义的,它可以让所需方面的子地块在画布中看起来很好。)