how to save 120 figures in a folder defined by user and later retrieve it?

i have to save all 120 subfigures and then later read it again to apply modification and i have to make it sure that figures dont overlap each other .suggest some code i am new to this MATLAB
help would be appreciated

4 件のコメント

KSSV
KSSV 2018 年 4 月 10 日
What format figure should be?
KALYAN ACHARJYA
KALYAN ACHARJYA 2018 年 4 月 10 日
Are these individual imshow (Display Window) figures?
rikki
rikki 2018 年 4 月 10 日
yes all individual images and format should be png
Pawel Jastrzebski
Pawel Jastrzebski 2018 年 4 月 10 日
What sort of modification do you wan to carry out on the .png graph in Matlab?

サインインしてコメントする。

回答 (1 件)

Pawel Jastrzebski
Pawel Jastrzebski 2018 年 4 月 10 日
編集済み: Pawel Jastrzebski 2018 年 4 月 10 日
When you say 120-off figures:
  • Are these matlab figures .fig?
Also, see the code below that was used to create what is known as a matlab subplot . In this example I've created a grid of 32 subplots and it's barely readable.
  • Are you sure you want to use a subplot for all of the 120 figures?
  • Or 120 figures to be plotted in one graph?
NrOfSubPlots = 32;
PlotGridX = 8;
PlotGgridY = NrOfSubPlots/PlotGridX;
f(1) = figure;
%first plot
subplot(PlotGridX,PlotGgridY,1);
scatter(rand([1,10]),rand([1,10]));
hold on
for i=2:NrOfSubPlots
subplot(PlotGridX,PlotGgridY,i);
scatter(rand([1,10]),rand([1,10]));
end
savefig(f(1),'32plots.fig')
Output:
The code below shows how to save figures to a .fig file and the read them back to Matlab and to the subplot:
% create plots
NrOfSubPlots = 10;
for i=1:NrOfSubPlots
f(i) = figure;
scatter(rand([1,10]),rand([1,10]));
name = ['fig' num2str(i) '.fig']
savefig(f(i),name)
end
close(f)
clear f i name;
% this line checks how many .figs are in the current folder
% DIR returns a structure.
FigsInTheFolder = dir('*.fig');
HowMany = numel(FigsInTheFolder);
% load the figuers back to matlab
newF = figure;
for i = 1:HowMany
newF(i) = openfig(FigsInTheFolder(i).name,'invisible');
end
% subplot all figs
showF = figure;
for i = 1:HowMany
h(i) = subplot(1,HowMany,i);
copyobj(allchild(get(newF(i),'CurrentAxes')),h(i));
end

1 件のコメント

rikki
rikki 2018 年 4 月 11 日
編集済み: rikki 2018 年 4 月 11 日
suppose in a folder u have 10 images r ...can u please tell how to read this folder and then display all sub images in 1 figure window without overlapping

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeCreating, Deleting, and Querying Graphics Objects についてさらに検索

タグ

質問済み:

2018 年 4 月 10 日

編集済み:

2018 年 4 月 11 日

Community Treasure Hunt

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

Start Hunting!

Translated by