2015-01-22 5 views
1

하나의 변수 만 포함하는 TTree에서 1D 막대 그래프를 만들려고합니다. 당신이 볼 수 위의TTree에서 막대 그래프 만들기

TTree *tree = new TTree("tree", ""); 
tree->ReadFile("occupancyPerDataset.txt", "size"); 

TH1F *occupancy = new TH1F("occupancy", "Occupancy per Dataset", 100, 0,  0.063) 

나는 나무를 생성하고 .txt 파일에서 데이터로 가득 찼다. 그런 다음 빈의 수 (x_lowx_high)가있는 막대 그래프를 만들었습니다. 내가

occupancy->Fill(size); 

occupancy->Fill(tree); 

또는

을 수행하려고 할 때 오류가 발생합니다. 어떤 제안?

답변

1

TH1 (TH1F는 daughter 클래스 임)의 Fill 메서드는 트리를 매개 변수로 사용하지 않습니다.

당신은 두 가지 옵션이 있습니다 : 트리 항목을 통해

  1. 루프를 히스토그램 하나 하나를 입력합니다.

    tree->MakeClass("MYTREE") 호출하고 루프

    occupancy->Fill(VARIABLENAME); 
    

    를 첨가하고, 생성 된 코드를 실행하여 MYTREE.CLoop() 기능을 조작함으로써.

  2. 사용 Draw method of TTree :

    tree->Draw("VARIABLENAME>>HISTOGRAMNAME"); 
    
0

도면과 된 ttree 개체에서 히스토그램을 추출하기위한 몇 가지 옵션이 그들 중 몇몇 온라인 here을 찾을 수있는 ROOT 자습서에서 사용할 수있다 또는 $ ROOTSYS/tutorials/tree/아래에 로컬로 (자습서가 설치된 경우). basic2 예제는 수행하려는 작업에 도움이 될 수 있습니다.

관련 문제