using namespace RooFit; void pdf_2d() { RooWorkspace work("work",kTRUE) ; TMatrixDSym m(2) ; m(0,0) = m(1,1) = 1 ; m(1,0) = m(0,1) = 0.7; work.import(m,"cov"); work.factory("MultiVarGaussian::mvg({x[-5,5],y[-5,5]},{0,0},cov)"); //work.factory( "PROD::projx(mvg|y{-1})" ); work.factory( "PROD::projy(mvg|y)" ); TH2* h = work::mvg.createHistogram("x,y"); h->SetStats( 0 ); h->SetTitle( "Two-Dimensional PDF" ); h->Draw("cont3"); hproj = h->ProjectionX("bla", 30,30 ); cout << hproj->GetBinCenter( 31 ) << endl; hproj->Scale( 1./hproj->Integral() ); hproj->SetStats(0); hproj->SetTitle( "Conditional PDF" ); hproj->Draw(); gPad->SaveAs( "conditional_pdf.pdf" ); return; // RooPlot* framex = work::x.frame(); // work::mvg.plotOn( framex ); // framex->Draw(); // RooPlot* framey = work::y.frame(-1,1); // work::mvg.plotOn( framey ); // framey->Draw(); }