![]() with IPython).īe sure to assign FuncAnimation to a variable (here it’s anim). The final two lines may or may not be necessary depending on whether you’re working interactively (e.g. ![]() The frames argument is needed only if the animation is to be exported. The interval argument is optional and sets the interval between frames in milliseconds. Step six: call FuncAnimation and showįig, animate, interval=100, frames=len(t)-1)įuncAnimation requires two arguments: the figure object ‘fig’ and animation function ‘animate’. See later for other things that can be changed. The only command in the function is to change the object’s y data. Here, we are only plotting a single line, so we simply want the first (i.e., zeroth) object in the list of lines.īe sure to use ax.plot(…), not plt.plot(…) Step five: create a function to update the line This is necessary because the plot command returns a list of line objects. This sets up a line object with the desired attributes, which in this case are that it’s coloured black and has a line weight of 2. Well, it’s not actually arbitrary, it’s set up to produce a perfectly looping gif. Step three: create some data to plotį is a 2D array comprising some arbitrary data to be animated. Setting the limits in advance stops any rescaling of the limits that may make the animation jumpy and unusable. The first line sets up the figure and its axis, and the second line fixes the axis limits. The first two lines will be familiar to anyone who has used Python for science, and the third line is obviously specific to animation. I’ve left the final line commented as it isn’t necessary and will not work if your matplotlib version is <1.5. This animation requires less than 20 lines of code Step one: import the necessary modulesįrom matplotlib.animation import FuncAnimation However, the first four steps will involve nothing new to anyone who has made a plot using Matplotlib.Įach step contains a few lines of code that you can copy and paste, but a script with all the code for all examples can be found here. This example walks through how to create the animation below in six steps. It’s futile to try and display these in a single plot. In many cases these datasets will have more than two dimensions for example, temperature or salinity in an ocean circulation model has four dimensions: x, y, z, t. See here for a follow up post with more elaborate animation examples.Įxploring datasets is a big part of what many scientists do these days. In many cases all I need is a quick-and-dirty script that works, rather than longer code that adheres to best practices. However, when learning I found the tutorials and examples online either daunting, overly sophisticated, or lacking explanation. Creating animations with Python’s Matplotlib is quick and easy once you know how to do it.
0 Comments
Leave a Reply. |