How to make decent ROOT plots

How To Make Decent-Looking Plots

Making plots that others can easily understand is an essential skill (no matter what you end up doing!) Here are some rules.

  • Always, always label your axes.
  • Make the titles and labels nice and big, so people at the back of the room can read them.
  • Make sure the labels don’t run over the numbers.
  • Don’t put too many plots on one canvas.
  • Use robust lines that aren’t too thin to see at the back of the room.
  • Annotate judiciously: notations are useful to have, but don’t clutter.
  • Shadow boxes are strictly forbidden. They are an abomination.
  • Ditto for stat boxes overlapping the edge of the plot. In addition, stat boxes should be used only if they contain relevant information.
  • Avoid colored or gray backgrounds.

Since the Root default settings violate several of these rules, I suggest using a rootlogon.C script that does away with them. Here’s mine:

{

gStyle->SetStatBorderSize(1);
gStyle->SetStatColor(10);
gStyle->SetStatX(0.9);
gStyle->SetStatX(0.9);
gStyle->SetStatY(0.9);
gStyle->SetStatW(0.3);
gStyle->SetStatH(0.2);
gStyle->SetTitleBorderSize(0);
gStyle->SetTitleFillColor(0);
gStyle->SetFrameFillColor(10);
gStyle->SetCanvasColor(10);
gStyle->SetPadBottomMargin(0.14);
gStyle->SetLegendBorderSize(1);

printf("Read rootlogon.C\n");
}

To invoke this every time you run Root, create a file .rootrc in your home directory, which tells Root where to find your rootlogon.C script, e.g.

Rint.Logon:               ~/rootlogon.C

Back to the tutorials top page