Saltar al contenido

¿Mostrar varias imágenes en una celda de IPython Notebook?

Agradeceríamos tu ayuda para difundir nuestras reseñas sobre las ciencias informáticas.

Solución:

Respuesta corta:

llamada plt.figure() para crear nuevas figuras si desea más de una en una celda:

for ima in images:
    plt.figure()
    plt.imshow(ima)

Pero para aclarar la confusión con Image:

IPython.display.Image es para mostrar la imagen archivosno array datos. Si desea mostrar matrices numpy con Image, primero debe convertirlas a un formato de archivo (más fácil con PIL):

from io import BytesIO
import PIL
from IPython.display import display, Image

def display_img_array(ima):
    im = PIL.Image.fromarray(ima)
    bio = BytesIO()
    im.save(bio, format='png')
    display(Image(bio.getvalue(), format='png'))

for ima in images:
    display_img_array(ima)

Un cuaderno que ilustra ambos enfoques.

Esto es más fácil y funciona:

from IPython.display import Image
from IPython.display import display
x = Image(filename='1.png') 
y = Image(filename='2.png') 
display(x, y)

Disposición horizontal

Demostración de diseño horizontal

Respuesta corta

plt.figure(figsize=(20,10))
columns = 5
for i, image in enumerate(images):
    plt.subplot(len(images) / columns + 1, columns, i + 1)
    plt.imshow(image)

Respuesta larga

import glob
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
%matplotlib inline

images = []
for img_path in glob.glob('images/*.jpg'):
    images.append(mpimg.imread(img_path))

plt.figure(figsize=(20,10))
columns = 5
for i, image in enumerate(images):
    plt.subplot(len(images) / columns + 1, columns, i + 1)
    plt.imshow(image)

Te mostramos reseñas y puntuaciones

Nos puedes corroborar nuestro quehacer escribiendo un comentario y dejando una valoración te damos la bienvenida.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *