使用matplotlib打印时具有相同大小的图像?
我想用大量的图像(确切地说是28幅)进行绘图,我尝试过用脚本读取图像并进行绘图,但是我如何才能以相同的大小和文本对齐方式显示图形?我不想看到变形的数字。我不知道我需要在脚本中做哪些更改。我不知道,我正在学习python。 图像大小不同。 这是我的剧本使用matplotlib打印时具有相同大小的图像?,matplotlib,Matplotlib,我想用大量的图像(确切地说是28幅)进行绘图,我尝试过用脚本读取图像并进行绘图,但是我如何才能以相同的大小和文本对齐方式显示图形?我不想看到变形的数字。我不知道我需要在脚本中做哪些更改。我不知道,我正在学习python。 图像大小不同。 这是我的剧本 import matplotlib.pyplot as plt import matplotlib.image as mpimg from matplotlib import rcParams import numpy as np impor
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
from matplotlib import rcParams
import numpy as np
import matplotlib.gridspec as gridspec
from pylab import text
font = {'family' : 'Helvetica',
'size' : 24}
plt.rc('font', **font)
# figure size in inches optional
rcParams['figure.figsize'] = 15,5
# read images (are 28 figures)
img_1 = mpimg.imread('path/file1.png')
...
...
img_27 = mpimg.imread('path/file27.png')
# display images
fig, ax = plt.subplots(4,9, figsize=(14,6))
#fig.suptitle('Main title')
ax[0,0].imshow(img_1, aspect="auto");
ax[0,0].axis('off')
ax[0,0].title.set_text('HHP')
...
...
...
ax[2,8].imshow(img_27, aspect="auto");
ax[2,8].axis('off')
ax[2,8].title.set_text('SP10')
#imagen of the bar index
ax[3,0].imshow(img_28, aspect="auto");
ax[3,1].axis('off')
ax[3,2].axis('off')
ax[3,3].axis('off')
ax[3,4].axis('off')
ax[3,5].axis('off')
ax[3,6].axis('off')
ax[3,7].axis('off')
ax[3,8].axis('off')
ax[3,0].axis('off')
ax[3,0].set_position([0.27,0.2, 0.48, 0.05])
#text(-9.08, 0.6, r'$\bf{N-terminus}$', color='black', fontsize=28, fontname='Helvetica')
#text(-0.88, 0.6, r'$\bf{C-terminus}$', color='black', fontsize=28, fontname='Helvetica')
plt.show()
这是我的想法,我需要做得更好
谢谢你的支持 唯一一个看起来稍有不同的尺寸是SP7。这就是您所指的吗?要删除由
aspect='auto'
引起的变形,请删除aspect='auto'
。您可以尝试使用plt.子地块(..,gridspec_kw={'wspace':0.05,'hspace':0.05})
来获得您最喜欢的子地块间距。@RufusVS是的,SP7更大,IT1、IT2、IT3、IT4、IT5更小。那么,你知道问题或解决方案是什么吗?谢谢lot@JohanC谢谢你的回答,我已经试过了,但是文本没有对齐,有些图像更大(SP7和IT1),所以,在打印之前,图像的大小必须相同?感谢您的支持如果没有精确的图像,很难猜出发生了什么。也许有些图像的一面有很多空白?您应该做的第一件事是,编写一个函数,使其不必到处粘贴相同的代码副本。如果唯一的目标是用标签显示28幅图像,matplotlib并不是最明显的软件。有gimp,inkscape,libreoffice。。。还有许多其他的更有意义。