Trying to engineer the following in Matlab:
** loop start; y(:,i) = function of x; z(:,i) = function of x; plot(x,y(:,i)) on figure 1, hold all; plot(x,z(:,i)) on figure 2, hold all; ** loop end; add title, legend, etc for figure 1 (NB: we have multiple lines); add title, legend, ets for figure 2 (NB: same, have multiple lines for the legend);`
Tried multiple combinations without much luck. Managed to get 2 figures but only the 2-nd displays multiple lines, not the first. And can't figure how to add legends to these 2 correctly.
preguntado el 26 de agosto de 12 a las 23:08
Save a handle to each figure, and to each axis object:
fh1 = figure; hold all; ah1 = gca; fh2 = figure; hold all; ah2 = gca; for i=1:N y(:,i) = function of x; z(:,i) = function of x; plot(ah1, x, y(:,i)); %# tell it which axis to use (ah1) plot(ah2, x, z(:,i)); %# (ah2) end legend(ah1, ...) %# legend options here legend(ah2, ...) %# and the other legend %# note: you can set figure properties for each using fh1, fh2 handles.
figHandle1 = figure(1); figHandle2 = figure(2);
Then when you want to plot on that figure do this:
figure(figHandle1) %Plot on figure 1 %ie plot(someStuff) figure(figHandle2) %Plot on figure 2
Also its the same for the title and stuff, you jjust need to identify which figure by doing:
Espero que esto ayude.