How to add different titles to multiple image display using subplot?

I tried to use this code below to add titles "1" and "2" to my images, but only "1" shows above the first image.
Could anyone help me with this? I want to show "1" above the first image, and "2" above the second.
Thanks in advance.
subplot(1,2,1),imshow(I1),title('1');hold on
subplot(1,2,2),imshow(I2),title('2');hold off

3 comentarios

Nat
Nat el 14 de Abr. de 2022
Movida: Dyuman Joshi el 12 de Dic. de 2023
Same error with my problem. Did you find the answer?
I tried:
drawnow; figure;
imshow(Im1);
title('image 1');
drawnow; figure;
imshow(Im2);
title('image 2');
But now, the second title is now shown on the second figure but the image is printed in a separate figure.
Yes, but that's not an error. Did you actually receive an error (some red text)? If so what is it?
Your code is working as expected. See below:
What did you expect would happen when it hit the "figure" command on line 4 of your code above (line 6 of my code below)?
Im1 = imread('cameraman.tif');
Im2 = imread('moon.tif');
drawnow; figure; % Create first figure window.
imshow(Im1);
title('image 1');
drawnow; figure; % Create a separate, second figure window.
imshow(Im2);
title('image 2');
By the way, the call to drawnow should come after you draw something, like after a call to imshow and title. Do not call it before you have even drawn anything.

Iniciar sesión para comentar.

 Respuesta aceptada

What you want to happen is actually what DOES happen:
I1 = imread('cameraman.tif');
I2 = imread('moon.tif');
subplot(1,2,1),imshow(I1),title('1');hold on
subplot(1,2,2),imshow(I2),title('2');hold off
0000 Screenshot.png
If you want, you can explicitly put the axes handle in:
h1 = subplot(1,2,1), imshow(I1, 'Parent', h1), title(h1, '1'); hold on
h2 = subplot(1,2,2), imshow(I2, 'Parent', h2), title(h2, '2'); hold off

Más respuestas (1)

dan lahat
dan lahat el 9 de Mzo. de 2021
what if I want to title two different imshow with different title. lets say
imshow(Im1);
title('image 1');
figure;
imshow(Im2);
title('image 2');
matlab is showing the two pictures but the first title has been crushed by the second one, and the second imshow has no title.

Categorías

Más información sobre Display Image en Centro de ayuda y File Exchange.

Preguntada:

el 25 de Nov. de 2019

Comentada:

el 12 de Dic. de 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by