Annika Peter

Research & Interests

CV

Graphical Guide to SM

Photos

Travel

Links

Graphical Guide to SM

The best way to get anyone to remember your work is to summarize it in a very nice plot. There are many different plotting programs out there, each with distinct strengths and weaknesses. My four favorites, in order are:

  1. Supermongo, aka SM, a program by Robert Lupton and Patricia Monger. The main strength of this program is the ease by which it makes histograms; for histograms, you can't beat SM. I suspect that this feature is what makes it so beloved by astronomers. Most places have institutional licenses for this, but you can also buy your own for a modest fee from the authors. This program is great if you want to plot something really quickly and output the figure in encapsulated postscript.
  2. Gnuplot, a free program with a bunch of authors. There is a VERY NICE demo gallery linked from the webpage. The documentation is otherwise somewhat dense. I tend to use this program for three-dimensional plotting and to make quick line plots. It handles data files pretty well, although there are some subtleties related to the interpolation of data points for contour plots. The more recent versions give the user more control over the line/point styles, and have somewhat improved histogram capabilities. The downside to this program is that it does not take LaTeX syntax, unlike SM.
  3. matplotlib, a python library. This is what the cool kids (and by "cool", I mean "young") are using these days. It is perfect if you want to incorporate plotting into your existing python analysis script. Matplotlib is based on Matlab (see below) but is free! The one downside is that you have to make sure you have mutually compatible versions of python and the matplotlib, scipy, and numpy packages. Figuring that out can be a pain in the butt, but is well worth it. I have found that some things are really easy to do in matplotlib compared to other programs, but others are just a major pain. There exists an extensive image gallery, but I think it's not nearly as well organized or pedagogical as Gnuplot's.
  4. Matlab, alas, is not free, but that doesn't stop it from being used heavily in applied math and the biosciences. Plots are but one aspect of this relatively powerful program. This program is most useful if you are using Matlab for analysis already, and has good two-dimensional and three-dimensional capability. The documentation on the website is helpful and fairly well organized.

I know my dislike of IDL and Mathematica make me a heretic in astronomy and theoretical physics respectively, but as a C programmer I find the use of the ';' symbol to start comments in IDL to be highly disconcerting, and the opaqueness of Mathematica worries me. Let me say that I believe history is on my side when it comes to IDL. All of the UCI astro grad students use python instead of IDL for data analysis and plotting, and many of the postdocs are moving that direction. IDL is to python as Sony Walkmen are to iPods.

The main purpose of this page is to provide a demo gallery for SM. My other favorite programs have galleries, but this program does not. Even though there is quite a lot of documentation for Supermongo, I find that it is a lot faster to make a plot to my satisfaction if I have some sort of template. I am not an expert in this program, but I do want to share a few tricks that I've learned. If you find a way to do these things more easily, let me know. It follows that the plots on this page will be geared towards things I personally find useful, and is not at all an exhaustive demonstration of all SM can do. Finally, if you have tricks that you would like to share, or things you want to learn how to do, send me an email at annika.peter [at] uci.edu, and I'll see what I can do to extend the demo gallery.

Things I (hope to) cover: This is a work in progress. I will put links to things once I've started on those sections. I will NOT cover three-dimensional plotting unless forced to, instead recommending that you use Gnuplot for your three-dimensional plotting needs. Moreover, I will only really flesh out this gallery if I get a decent amount of feedback that this is a useful tool for people. Since I first dreamed up this gallery, I've been shifting more of my plotting to matplotlib not because I love it more than SM (I don't!) but because the younger of my collaborators are die-hard python fans. But I know there are old fogies like me who really would prefer to use SM, so if you are out there and like what you see, drop me a line!

Last updated: 10/23/2011