it-swarm.com.de

Wie kann ich zwei Bilder nebeneinander in Jupyter Notebook (iPython) anzeigen lassen?

Ich möchte 2 PNG-Bilder in iPython nebeneinander anzeigen.

Mein Code dafür ist:

from IPython.display import Image, HTML, display

img_A = '\path\to\img_A.png'
img_B = '\path\to\img_B.png'

display(HTML("<table><tr><td><img src=img_A></td><td><img src=img_B></td></tr></table>"))

Die Bilder werden jedoch nicht ausgegeben, sondern nur Platzhalter für die beiden Bilder angezeigt:

 enter image description here

Ich habe auch Folgendes ausprobiert:

s = """<table>
<tr>
<th><img src="%s"/></th>
<th><img src="%s"/></th>
</tr></table>"""%(img_A, img_B)
t=HTML(s)
display(t)

Das Ergebnis ist jedoch dasselbe:

 enter image description here

Die Bilder befinden sich mit Sicherheit im Pfad, da ich sie durch Anzeigen in einem Popup überprüft habe:

plt.imshow(img_A)
plt.imshow(img_B)

und sie erscheinen in den Popups.

Wie kann ich die beiden Bilder in iPython nebeneinander anzeigen lassen?

3
Kristada673

Sie können versuchen, matplotlib zu verwenden. Sie können ein Bild in ein numpy-Array einlesen, indem Sie mpimg.imread ( documentation ) aus matplotlib verwenden. Anschließend können Sie subplots (documentation) verwenden und zwei Spalten für erstellen Figuren und schließlich imshow (Dokumentation), um Bilder anzuzeigen.

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
from matplotlib import rcParams

%matplotlib inline

# figure size in inches optional
rcParams['figure.figsize'] = 11 ,8

# read images
img_A = mpimg.imread('\path\to\img_A.png')
img_B = mpimg.imread('\path\to\img_B.png')

# display images
fig, ax = plt.subplots(1,2)
ax[0].imshow(img_A);
ax[1].imshow(img_B);
1
student

Ich konnte sie wie folgt übereinander drucken:

from IPython.display import Image, display

for img in [img_A, img_B]:
    display(Image(filename = img))

Aber ich kann sie immer noch nicht nebeneinander anzeigen.

EDIT: Das macht es.

0
Kristada673