如何使用matplotlib.pyplot更改子图宽度/高度比?

问题描述 投票:2回答:2

如果运行以下代码

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,那么它可以更长?

enter image description here

基本上,如何做到这一点:enter image description here

python matplotlib plot
2个回答
2
投票

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

plt.imshow(a, aspect=2)

0
投票

此行定义绘图的大小

plt.figure(figsize=(5, 10))

5对应于高度,10对应于宽度。增加宽度以获得更长的情节,

plt.figure(figsize=(5, 20))
© www.soinside.com 2019 - 2024. All rights reserved.