필터 지우기
필터 지우기

How to make animtion of 3D surface plot?

조회 수: 30 (최근 30일)
priya anjali
priya anjali 2020년 6월 29일
댓글: priya anjali 2020년 6월 29일
I'm having my code here where I want to put animation. Can we show this animation wrt to any parameter?
  댓글 수: 2
Constantino Carlos Reyes-Aldasoro
To create an animation you will need to plot continuously different plots. Say you want to have 10 or 20 frames in your animation you could do this with a for loop:
for k=1:10
% use your code here, change the variables and surf each time
end
Now, you will need to grab each plot, so after each surf add the following:
drawnow
F(k) = getframe;
The variable F will contain your animation and then you can save as a video like this
v = VideoWriter('video_name'), 'MPEG-4');
open(v);
writeVideo(v,F);
close(v);
Hope this helps. If this does not solve your problem, please let me know. If it does, please accept the answer.
priya anjali
priya anjali 2020년 6월 29일
편집: priya anjali 2020년 6월 29일
Thank you, but it's showing some error about the function.

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

채택된 답변

Ameer Hamza
Ameer Hamza 2020년 6월 29일
편집: Ameer Hamza 2020년 6월 29일
See this example using variable 't'. Adapt it according to your requirement
%suface plot;
x=-20:1:20;
y=-20:1:20;
[x,y]=meshgrid(x,y);
c1=0.1576;
A1=0.9706;
A2=0.9572;
A3=0.4854;
A4=2*A3;
T = linspace(0, 1, 100);
fig = figure;
ax = axes();
hold(ax);
view(3);
grid on
colormap jet;
xlabel('\bf{x}','fontsize',18);
ylabel('\bf{y}','fontsize',18);
zlabel('\bf{u (x,y,t)}','fontsize',18);
s = surf(x,y,zeros(size(x)),'Facealpha','1'); % temporary surface to get the handle
v = VideoWriter('test.mp4', 'MPEG-4');
open(v);
for i=1:numel(T)
t=T(i);
b=cos(t);
A=log(b);
s.ZData = c1./((x./(A1+3*t).^1./3+A-(A2+y)./(A1+3*t).^1./3-A4)*(A1+3*t).^1./3);
drawnow;
frame = getframe(fig);
writeVideo(v, frame)
end
close(v);
  댓글 수: 5
Ameer Hamza
Ameer Hamza 2020년 6월 29일
You want to add images to pdf file? See export graphics() to save images at few values of 'y'.
priya anjali
priya anjali 2020년 6월 29일
Yes, in pdf file which i generated from latex file. Here i can put a command on .mp4 file to attach. So, is it possible to save it as a vedio ?

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 MATLAB에 대해 자세히 알아보기

태그

제품


릴리스

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by