Modify Plotter to multiple instance capable with multiple canvas
This commit is contained in:
parent
25167e2d62
commit
b43957afd8
|
@ -27,11 +27,14 @@ public:
|
|||
void Plot(Int_t numRuns, Int_t nSteps, std::vector<Double_t> t, std::vector<Double_t> x);
|
||||
TMultiGraph * GetTmultiGraph();
|
||||
|
||||
static unsigned int IDCounter;
|
||||
|
||||
private:
|
||||
bool draw;
|
||||
TMultiGraph *mg;
|
||||
TGraph* g1;
|
||||
TCanvas* canv;
|
||||
Double_t tl,xl;
|
||||
unsigned int ID;
|
||||
};
|
||||
#endif
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
#include "Plotter.hh"
|
||||
|
||||
unsigned int Plotter::IDCounter = 0;
|
||||
|
||||
Plotter::Plotter(bool draw_par = false)
|
||||
{
|
||||
draw = draw_par;
|
||||
ID = IDCounter++;
|
||||
if(draw)
|
||||
{
|
||||
canv = new TCanvas("canc","display",800,400);
|
||||
char str[30];
|
||||
snprintf(str, 30, "Plotter_canvas%d", ID);
|
||||
canv = new TCanvas(str, "display",800,400);
|
||||
}
|
||||
//g1 = new TGraph();
|
||||
mg = new TMultiGraph();
|
||||
}
|
||||
|
||||
|
@ -24,17 +28,15 @@ TMultiGraph * Plotter::GetTmultiGraph()
|
|||
|
||||
void Plotter::Plot(Int_t numRuns, Int_t nSteps, std::vector<Double_t> t, std::vector<Double_t> x)
|
||||
{
|
||||
mg->SetTitle("BM1D");
|
||||
char str[30];
|
||||
snprintf(str, 30, "BM1D Plotter canvas%d", ID);
|
||||
mg->SetTitle(str);
|
||||
|
||||
for(int i= 0; i < numRuns; i++)
|
||||
{
|
||||
g1 = new TGraph(nSteps,&t[i*nSteps],&x[i*nSteps]);
|
||||
g1->SetLineColor(i%30+1);
|
||||
//g1->SetTitle("Brownian Movement");
|
||||
//g1->GetYaxis()->SetTitle("X");
|
||||
//g1->GetXaxis()->SetTitle("Time");
|
||||
g1->SetLineWidth(2);
|
||||
//g1->SetMarkerColor(1);
|
||||
g1->SetMarkerStyle(1);
|
||||
|
||||
mg -> Add(g1);
|
||||
|
|
Loading…
Reference in New Issue