Plotting multiple graph in same graph

조회 수: 4 (최근 30일)
Mr. 206
Mr. 206 2018년 9월 12일
댓글: dpb 2018년 9월 13일
I am trying to plot all the graphs of each txt file in one graph. I am using this code but it is plotting them separately. Here is my code..
%Creating a continuous loop which will only stop after reaching j=size(READ,2)
c = 0;
%graphics_toolkit gnuplot
figure('visible','off');hold on
%This lopp will take column 1,3,5,7...............
for j = 1: 2 : size(READ,2)
c = c+1;
clf
x=READ(:,j);
y=READ(:,j+1);
plot(x_0,y_0)
end
hold off
end

채택된 답변

dpb
dpb 2018년 9월 12일
...
for j = 1: 2 : size(READ,2)
c = c+1;
clf
...
Well, you wipe out everything up to here--if the point is to add to the given figure, this defeats that.
clf is almost never needed in script or function; as a general rule forget it and cla and friends even exist; only when you discover a need go and dust them off...
  댓글 수: 8
Mr. 206
Mr. 206 2018년 9월 13일
편집: Mr. 206 2018년 9월 13일

Using this piece of code i am saving all the separate graph in "Test_output_01" folder.

%Now saving the file in a certain directory        
            fileName = ['/home/ali/Master_Thesis_Ali/Test_output_01/', initialFileName, '.png'];        
            print(fileName, '-dpngcairo');

I just dont want to repeat the whole

for j = 1:2:size(READ,2) 
loop again just to plot them together. 

So what i want is to tweak the loop a bit to plot & save them separately in "Test_output_01" folder and together in folder "Test_output_02".

Accept my apology if i can't make myself clear. And thanks for your help.

dpb
dpb 2018년 9월 13일

Inside the loop you need both directory names and to write to each after you've drawn the specific figure that belongs in that subdirectory.

You may find structuring the code to do this simpler if you encapsulate the existing code into its own function but with another couple of inputs; a flag as to whether to create multiple plots on a single figure (hold on) or to create a figure for each data set (hold off) and the name of the directory to use for output.

Then you could simply call that function from an outer loop with the control variables as wanted and not have to try to mung internally to the function itself.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile 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!

Translated by