Index: trunk/FACT++/src/makeplots.cc
===================================================================
--- trunk/FACT++/src/makeplots.cc	(revision 14722)
+++ trunk/FACT++/src/makeplots.cc	(revision 14723)
@@ -53,4 +53,12 @@
 }
 
+void DrawClone(TCanvas &c, TGraph &g)
+{
+    if (g.GetN()==0)
+        return;
+
+    c.cd();
+    ((TGraph*)g.DrawClone("C"))->SetBit(kCanDelete);
+}
 
 // ========================================================================
@@ -184,8 +192,11 @@
 
     TCanvas c1;
-    gPad->SetLeftMargin(0.085);
-    gPad->SetRightMargin(0.01);
-    gPad->SetTopMargin(0.03);
-    gPad->SetGrid();
+    c1.SetFillColor(kWhite);
+    c1.SetBorderMode(0);
+    c1.SetFrameBorderMode(0);
+    c1.SetLeftMargin(0.085);
+    c1.SetRightMargin(0.01);
+    c1.SetTopMargin(0.03);
+    c1.SetGrid();
     hframe.GetYaxis()->SetTitle("Altitude [deg]");
     hframe.SetMinimum(15);
@@ -194,8 +205,11 @@
 
     TCanvas c2;
-    gPad->SetLeftMargin(0.085);
-    gPad->SetRightMargin(0.01);
-    gPad->SetTopMargin(0.03);
-    gPad->SetGrid();
+    c2.SetFillColor(kWhite);
+    c2.SetBorderMode(0);
+    c2.SetFrameBorderMode(0);
+    c2.SetLeftMargin(0.085);
+    c2.SetRightMargin(0.01);
+    c2.SetTopMargin(0.03);
+    c2.SetGrid();
     hframe.GetYaxis()->SetTitle("Predicted Current [\\muA]");
     hframe.SetMinimum(0);
@@ -204,9 +218,12 @@
 
     TCanvas c3;
-    gPad->SetLeftMargin(0.085);
-    gPad->SetRightMargin(0.01);
-    gPad->SetTopMargin(0.03);
-    gPad->SetGrid();
-    gPad->SetLogy();
+    c3.SetFillColor(kWhite);
+    c3.SetBorderMode(0);
+    c3.SetFrameBorderMode(0);
+    c3.SetLeftMargin(0.085);
+    c3.SetRightMargin(0.01);
+    c3.SetTopMargin(0.03);
+    c3.SetGrid();
+    c3.SetLogy();
     hframe.GetYaxis()->SetTitle("Estimated relative threshold");
     hframe.SetMinimum(0.9);
@@ -215,8 +232,11 @@
 
     TCanvas c4;
-    gPad->SetLeftMargin(0.085);
-    gPad->SetRightMargin(0.01);
-    gPad->SetTopMargin(0.03);
-    gPad->SetGrid();
+    c4.SetFillColor(kWhite);
+    c4.SetBorderMode(0);
+    c4.SetFrameBorderMode(0);
+    c4.SetLeftMargin(0.085);
+    c4.SetRightMargin(0.01);
+    c4.SetTopMargin(0.03);
+    c4.SetGrid();
     hframe.GetYaxis()->SetTitle("Distance to moon [deg]");
     hframe.SetMinimum(0);
@@ -262,4 +282,8 @@
         gm.SetLineColor(kYellow);
 
+        if (cnt==0)
+            leg.AddEntry(gm.Clone(), "Moon", "l");
+        leg.AddEntry(g1.Clone(), name.data(), "l");
+
         // Loop over 24 hours
         int i=0;
@@ -319,25 +343,11 @@
         }
 
-        // Add graphs to canvases and add corresponding entry to legend
-        c1.cd();
         if (cnt==0)
-        {
-            TGraph *g = (TGraph*)gm.DrawClone("C");
-            g->SetBit(kCanDelete);
-            leg.AddEntry(g, "Moon", "l");
-        }
-        ((TGraph*)g1.DrawClone("C"))->SetBit(kCanDelete);
-
-        c2.cd();
-        ((TGraph*)g2.DrawClone("C"))->SetBit(kCanDelete);
-
-        c3.cd();
-        ((TGraph*)g3.DrawClone("C"))->SetBit(kCanDelete);
-
-        c4.cd();
-        TGraph *g = (TGraph*)g4.DrawClone("C");
-        g->SetBit(kCanDelete);
-
-        leg.AddEntry(g, name.data(), "l");
+            DrawClone(c1, gm);
+
+        DrawClone(c1, g1);
+        DrawClone(c2, g2);
+        DrawClone(c3, g3);
+        DrawClone(c4, g4);
     }
 
@@ -345,16 +355,21 @@
     // Save three plots
     TCanvas c5;
+    c5.SetFillColor(kWhite);
+    c5.SetBorderMode(0);
+    c5.SetFrameBorderMode(0);
     leg.Draw();
 
-    c1.SaveAs("test1.eps");
-    c2.SaveAs("test2.eps");
-    c3.SaveAs("test3.eps");
-    c4.SaveAs("test4.eps");
-    c5.SaveAs("legend.eps");
-
-    c1.SaveAs("test1.root");
-    c2.SaveAs("test2.root");
-    c3.SaveAs("test3.root");
-    c4.SaveAs("test4.root");
+    const string t = Time(jd).GetAsStr("%Y%m%d");
+
+    c1.SaveAs((t+"-ZenithDistance.eps").c_str());
+    c2.SaveAs((t+"-PredictedCurrent.eps").c_str());
+    c3.SaveAs((t+"-RelativeThreshold.eps").c_str());
+    c4.SaveAs((t+"-MoonDist.eps").c_str());
+    c5.SaveAs((t+"-Legend.eps").c_str());
+
+    c1.SaveAs((t+"-ZenithDistance.root").c_str());
+    c2.SaveAs((t+"-PredictedCurrent.root").c_str());
+    c3.SaveAs((t+"-RelativeThreshold.root").c_str());
+    c4.SaveAs((t+"-MoonDist.root").c_str());
 
     return 0;
