{ TCanvas *c1 = new TCanvas("c1", "c1",15,48,700,500); Double_t x[3] = {1, 2, 3}; Double_t y[3] = {1, 1.5, 3}; Double_t ex[3] = {0.5, 0.5, 0.5}; TGraphErrors * ulGraph = new TGraphErrors(3, (Double_t*)(&x[0]), &y[0], &ex[0], 0); ulGraph->Draw("APEZ"); ulGraph->GetYaxis()->SetRangeUser(0.0, 4.0); // Draw Arrows on UL points and ass x error bars ulGraph->SetMarkerStyle(9); TObjArray arrows; Double_t x1, y1, y2, yPad; gPad->Update(); Double_t ymin = gPad->GetUymin(); Double_t ymax = gPad->GetUymax(); Double_t dy = (0.075*(ymax-ymin))+ymin; for(Int_t j = 0; j<= ulGraph->GetN(); j++){ ulGraph->GetPoint(j, x1, y1); y2 = y1-dy; arrows.Add(new TArrow(x1, y1, x1, y2, 0.015, "|>")); dynamic_cast(arrows.Last())->Draw(); } }