Subplotting many images in one figure

4 vues (au cours des 30 derniers jours)
Edu PL
Edu PL le 12 Fév 2014
Hi there,
I am pretty ignorant about matlab but starting to learn.
Here I am trying to subplot a group of images located in a folder. The names of the pictures are like "Point01Pic1_140127","Point01Pic1_140128".... "Point02Pic1_140127", "Point02Pic2_140128"...
being the date the final part of the name. the idea is to plot all of them in the same figure with the purpose of comparison.
I am trying something like this:
clear all
clc
a = uigetdir;
A = dir( fullfile(a, '*.jpg') );
fileNames = { A.name };
for iFile = 1 : numel( A )
newName = fullfile(a, sprintf( '%03d.jpg', iFile ) );
movefile( fullfile(a, fileNames{ iFile }), newName );
end
subplottight(2,4,1), imshow('008.jpg', 'border', 'tight');
subplottight(2,4,2), imshow('006.jpg', 'border', 'tight');
subplottight(2,4,3), imshow('004.jpg', 'border', 'tight');
subplottight(2,4,4), imshow('002.jpg', 'border', 'tight');
subplottight(2,4,5), imshow('007.jpg', 'border', 'tight');
subplottight(2,4,6), imshow('005.jpg', 'border', 'tight')
subplottight(2,4,7), imshow('003.jpg', 'border', 'tight');
subplottight(2,4,8), imshow('001.jpg', 'border', 'tight');
Doing this way I am renaming the files like "001", "002" (I dont know how to handle the orig. names) etc getting a 2x4 subplot with the right arragement but I would like to use the original names (ie "Point02Pic2_140128" for example)and have all the pictures of "Point 1" in one row in cronological order, all the pictures of "Point2" in the next row etc.
I hope I explained myseld clear enough.
Thanks for the patience and any help will be appreciated.

Réponse acceptée

Mischa Kim
Mischa Kim le 12 Fév 2014
Modifié(e) : Mischa Kim le 12 Fév 2014
Edu, this should do:
for ii = 1:8
file_name = strcat('Point0',num2str(ceil(ii/4)),'Pic',num2str(ii-4*(ii>4)),'_140128.jpg')
subplottight(2,4,ii), imshow(file_name, 'border', 'tight');
end
assuming your image files end with _140128 (not quite sure I understand the file name sequence). If they do not, I am sure with the above code snippet you can figure out how to adjust the code.
  5 commentaires
Edu PL
Edu PL le 12 Fév 2014
Amazing! yes it does, smoothly!! thanks Mischa, you are a crack! :-)
Edu PL
Edu PL le 26 Fév 2014
hummm could you look down please? it looks like I responded to myself...

Connectez-vous pour commenter.

Plus de réponses (1)

Edu PL
Edu PL le 26 Fév 2014
Hello Mischa,
Edu again here trying to solve something in matlab. Now I want to put a title or text in every picture of the set. I am arranging them putting together the same images but at a different time to check the changes. For example 8 images in two rows but each of them of the same place but at a different date. Next 2 rows are showing 8 more images of another site during the same different 8 dates.
How can I put the date in every image? in the example below it should be 4 differents dates in the two rows.
I hope I made this clear.
Thanks!
  1 commentaire
Khan Bahadar Khan
Khan Bahadar Khan le 11 Mai 2019
Untitled.png
How can we add images in MATLAB like the displayed one.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Graphics dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by