Matlab Movie

5 vues (au cours des 30 derniers jours)
Nikhil
Nikhil le 27 Juil 2011
plot(ws(1,:),y,'r-+');
fig1 = gcf;
set(fig1, 'NextPlot','replacechildren');
winsize = get(fig1,'Position');
set(gca, 'XLim',[0 20],'YLim',[0 150]);
lim = gca;
for i = 1:noframes
plot(ws(i,:),y,'r-+');
axes = lim;
drawnow;
a(:,i) = getframe;
end
I am trying to visualize some data with time and need to make a movie with it, I researched a little and got to a point where i can genrate a movie but the axes in the movie keeps changing. And it makes no sense if i can't fix the axes and tried to do that with no avail, can anyone of you gurus look at this and give me some insights, into this.
Essentially i have vector ws at various time stamps in a variable and have a another vector which which is constant, so the y axis remains constant because i am always plotting ws against the same y but the x axis on which i plot ws keeps changing and i need to stop that.
thanks nk

Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 27 Juil 2011
axis([Xmin Xmax Ymin Ymax]);
  1 commentaire
Nikhil
Nikhil le 27 Juil 2011
tried that in the for loop it says that
??? Subscript indices must either be real positive integers or logicals.

Connectez-vous pour commenter.

Plus de réponses (2)

Nikhil
Nikhil le 27 Juil 2011
sorry man i guess i was using axis as a variable for something, i guess i didn't realize that, thanks a bunch though
  1 commentaire
Fangjun Jiang
Fangjun Jiang le 27 Juil 2011
You have this line: axes=lim. Notice that axes is a built-in function.

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 27 Juil 2011
Every time you plot, it blows away prior settings. So you need to determine your limits in advance and then after you call plot() with your new data (in your loop), issue calls to xlim() and ylim() to change the limits to your predetermined standard limits.
  2 commentaires
Nikhil
Nikhil le 27 Juil 2011
can you tell me a way to save xlim and ylim in a variable? i mean i get what you are saying but can't just implement it, i got it working now after changing the "axis" jiang was pointing out but i am still hard coding the limits.
Fangjun Jiang
Fangjun Jiang le 27 Juil 2011
AxisLimit=axis(gca);
axis(AxisLimit+10);
The same applies to xlim(),ylim() and zlim()

Connectez-vous pour commenter.

Catégories

En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by