Dear Experts
I want to see some plot after running a program, so I wrote
TCanvas* Canvas = new TCanvas();
TH2D* histo = new TH2D(xxx,xxx,xxx,xxx);
// some code
Canvas->cd();
histo->Draw();
But after the program finished the window didn’t come out. How can I make it create a window?
Please read tips for efficient and successful posting and posting code
ROOT Version: 6.26.02
Platform: MacOS
Compiler: gcc
couet
June 1, 2022, 1:35pm
2
I see at least one mistake: you define hits
and you draw histo
.
Sorry this is just for example… actually is a typo when I ask this question. I can save the canvas in the root file and see it from root file, but I just can’t see it after the program finished.
couet
June 1, 2022, 1:42pm
4
file crisps.C
void crisps() {
auto Canvas = new TCanvas();
auto hist = new TH2D("","",40,-1,1,40,-1,1);
hist->Draw();
}
gives:
root [0] .x crisps.C
Yes, the problem is, when I use root and type
.x crisps.cxx
I can get the window, but when I compile it by gcc and run it, the window doesn’t come out…
couet
June 1, 2022, 1:49pm
6
Have you made a standalone program as described in the Manual ?
Yes, I made one you wrote above and compiled it, and the window doesn’t come out.
couet
June 1, 2022, 1:56pm
8
You should do what is described in the interactive part of the page I sent you.
It works! Never use Application before but the window only doesn’t come out after I changed to new MacBook…Thank you very much!
couet
June 1, 2022, 2:24pm
10
That’s not new. It has always been that way.