I've used iPython with matplotlib.
It has a basic mode which mimics matlab, but it has facilities to make many kinds of graphs/diagrams easier. It does not have full 3D, just 2.5D, which is limiting for nicely shaded 3D graphics, but fine for most graphs and diagrams.
It would be perfect for creating your final animation graph. As it is programatic, it is easy to create a series of graphs with a slowly varying perspective or parameter, saving each as an image, and then use ImageMagick or other program to turn it into a gif.
Its default output is not as smooth and pretty as a modern spreadsheet program, but it is very flexible, and fast to use if you know how. For an important image I would use the matplotlib for the diagrams without text, and then use a basic image editing program to add text and any effects.
With numpy for calculating, it is very easy to do basic graphs. If you know some python programming you can do almost anything.
I wrote a little physics graphics library for my students to use for their physics projects. The following is a student's work showing his analysis of a star's position data. It is not as pretty as it could be, but it shows what is possible. It is constructed by overlaying 2 line plots, 2 scatter plots, and 3 vector plots. Colours are set for each item of the plot to show the passing of time.
It is not as pretty as it could be, but it gives an indication of what is possible.
Here is a gallery of the type of thing that can be done with matplotlib. http://matplotlib.org/gallery.html