我想显示图像,但有些混乱

时间:2019-12-24 06:26:27

标签: python matplotlib plot

我想显示类似ratio= [0.1,0.2,0.3]的图像,但是图像只显示第一列

   ratio0  ratio1 ration3

 limit1 
 limit2
 limit3
 limit4


def show_images(self, limit,ratio):
    k = 0
    for idxr, r in enumerate(ratio):
        for idx, (img, target) in enumerate(self.trainloader):
            # print(k,idx)
            self.adjust_image(r)
            plt.subplot(1, len(ratio), idx + 1)
            img = img[0, :, :].numpy().squeeze()
            plt.imshow(img)
            plt.show()
            if idx == limit: break

1 个答案:

答案 0 :(得分:1)

我不确定您是否理解了您的问题,但这可能会有所帮助:您在为所有{strong>所有子图调用plt.show()之后,应该使用imshow(并非每次都使用之后)一个):

for idxr, r in enumerate(ratio):
  for idx, (img, target) in enumerate(self.trainloader):
    # print(k,idx)
    self.adjust_image(r)
    plt.subplot(1, len(ratio), idx + 1)
    img = img[0, :, :].numpy().squeeze()
    plt.imshow(img)
    if idx == limit: break
  plt.show()