Mathematica Mathematica Animation for power point?

AI Thread Summary
To create an animated 3D plot that rotates about the z-axis for a presentation, users can utilize Mathematica's Animate function. The default viewpoint can be adjusted, and the animation can be set to rotate smoothly by modifying the ViewPoint parameters. A sample code snippet demonstrates how to animate a 3D plot of Sin[x]Sin[y] while fixing the ViewAngle to maintain a consistent zoom level. For exporting, options include saving the animation as video files like AVI or MOV, or creating animated GIFs using ListAnimate. Users can also export individual frames for more control over the final output. Overlay animations can be achieved by combining multiple plots into a single graphic using the Show function, followed by the SpinShow command from an older animate package for smoother transitions. Additionally, increasing the frames per second (FPS) can enhance the animation's fluidity.
Wesleytf
Messages
31
Reaction score
0
Is there a way to animate and export a 3D plot such that it rotates about the z axis automatically? A friend is doing a presentation and I'd like to make some animated files of the 3D plots we've been making to include in a power-point. I've looked through help files and some google searches and only been able to find animation for parameters.
 
Physics news on Phys.org
The default ViewPoint is:

In[1]:= ViewPoint/.Options[Plot3D]
Out[1]= {1.3,-2.4,2.}

We hit it with a rotation about the z-axis and animate. Note that I fixed the ViewAngle so that the graphics does not zoom in and out as the projection of the plot fits better and worse in the rectangular bounding box.

Animate[Plot3D[Sin[x]Sin[y],{x,0,2Pi},{y,0,2Pi},PlotRange->1,Ticks->None,ViewPoint->{1.3 Cos[a]-2.4Sin[a],-2.4 Cos[a]-1.3 Sin[a],2},ViewAngle->20*Degree],{a,0,2\[Pi]}]
 
To export, there is a few different ways.

g = Animate[Plot3D[Sin[x]Sin[y],{x,0,2Pi},{y,0,2Pi},PlotRange->1,Ticks->None,
ViewPoint->{1.3 Cos[a]-2.4Sin[a],-2.4 Cos[a]-1.3 Sin[a],2},ViewAngle->20*Degree],
{a,0,2\[Pi],\[Pi]/10}, AnimationRepetitions->1,AnimationDirection->Forward]

Then export to a video filetype, eg "avi", "mov", "swf"
$HomeDirectory is the user's home directory.
Another useful directory is NotebookDirectory[]

Export[ToFileName[$HomeDirectory,"test.swf"],g]

The above export has the animation slider and frame/panel in it. You can get rid of the panel by using Paneled -> False. To get rid of the slider is more difficult. One solution - that also gives you more control is to create a list of frames:

gTable=Table[Plot3D[Sin[x]Sin[y],{x,0,2Pi},{y,0,2Pi},PlotRange->1,Ticks->None,ViewPoint->{1.3 Cos[a]-2.4Sin[a],-2.4 Cos[a]-1.3 Sin[a],2},ViewAngle->20*Degree],{a,0,2\[Pi],\[Pi]/10}];

This can be animated using ListAnimate and exported using, eg as an animated gif:

Export[ToFileName[$HomeDirectory,"gTable.gif"],gTable,ImageSize->350];

To get the best control, you can export each individual frame as an image and animate using an external program. An example is http://groups.google.com/group/comp.soft-sys.math.mathematica/browse_thread/thread/474806f64be15759" .
 
Last edited by a moderator:
alright, I've got one plot spinning around(thanks so much for that snippet)--is it possible to do an overlay animation?
 
Last edited:
I doubt that producing an overlay animation is built into mathematica.
You probably could make your own code to get mathematica to make one - but maybe an external specialised tool might be better...
 
No worries--you've already helped a ton.
 
Oh, I forgot to come back and say that you can in fact do an overlay if you define it as a single graphic. I had to install the old animate package to use the "SpinShow" command.

g3 = Show[plot1, plot2, plot3]

SpinShow[g3]
 
Simon Tyler your method works really good but I'd like a smoother animation with more FPS. How can this be done?

Thank you so much!
 

Similar threads

Replies
3
Views
5K
Replies
2
Views
4K
Replies
1
Views
6K
Replies
1
Views
7K
Replies
1
Views
9K
Replies
52
Views
12K
Replies
4
Views
4K
Replies
2
Views
2K
Replies
1
Views
6K
Back
Top