how to save 120 figures in a folder defined by user and later retrieve it?
조회 수: 2 (최근 30일)
이전 댓글 표시
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
Pawel Jastrzebski
2018년 4월 10일
What sort of modification do you wan to carry out on the .png graph in Matlab?
답변 (1개)
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
참고 항목
카테고리
Help Center 및 File Exchange에서 Specifying Target for Graphics Output에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!