Skip to content
Snippets Groups Projects
plot.h 1.4 KiB
Newer Older
  • Learn to ignore specific revisions
  • Sylvester Joosten's avatar
    Sylvester Joosten committed
    #ifndef PLOT_H
    #define PLOT_H
    
    #include <TColor.h>
    #include <fmt/core.h>
    #include <vector>
    
    namespace plot {
    
    const int kMpBlue = TColor::GetColor(0x1f, 0x77, 0xb4);
    const int kMpOrange = TColor::GetColor(0xff, 0x7f, 0x0e);
    const int kMpGreen = TColor::GetColor(0x2c, 0xa0, 0x2c);
    const int kMpRed = TColor::GetColor(0xd6, 0x27, 0x28);
    const int kMpPurple = TColor::GetColor(0x94, 0x67, 0xbd);
    const int kMpBrown = TColor::GetColor(0x8c, 0x56, 0x4b);
    const int kMpPink = TColor::GetColor(0xe3, 0x77, 0xc2);
    const int kMpGrey = TColor::GetColor(0x7f, 0x7f, 0x7f);
    const int kMpMoss = TColor::GetColor(0xbc, 0xbd, 0x22);
    const int kMpCyan = TColor::GetColor(0x17, 0xbe, 0xcf);
    
    const std::vector<int> kPalette = {kMpBlue,   kMpOrange, kMpGreen, kMpRed,
                                       kMpPurple, kMpBrown,  kMpPink,  kMpGrey,
                                       kMpMoss,   kMpCyan};
    
    void draw_label(int ebeam, int pbeam, const std::string_view detector,
                    std::string_view vm, std::string_view what) {
      auto t = new TPaveText(.15, 0.800, .7, .925, "NB NDC");
      t->SetFillColorAlpha(kWhite, 0.4);
      t->SetTextFont(43);
      t->SetTextSize(25);
      t->AddText(fmt::format("#bf{{{} }}SIMULATION", detector).c_str());
      t->AddText(fmt::format("{} for {} DVMP.", what, vm).c_str());
      t->AddText(fmt::format("{} GeV on {} GeV", ebeam, pbeam, what).c_str());
      t->SetTextAlign(12);
      t->Draw();
    }
    
    } // namespace plot
    
    #endif