Alphanumeric axis labels

I’ve been struggling with placing alphanumeric labels onto the y-axis of a TH1 histogram, I can’t get it to work for a TGraph either. It works fine for the x-axis though, using the h->Getxaxis()->SetBinLabel() command, but this fails for the y-axis.

I want a filled region indicated by the lines to emphasise the total error. I’ve tried creating my own TGaxis object, but got stuck. I’ve searched the usual places, looked at labelling tutorials, to no avail.

The [pre] tags aren’t activated so I attached an image of what I wanted.
drawing-1.eps.gz (18.9 KB)

see suggestion below


{ TCanvas *c1 = new TCanvas("c1"); c1->SetLeftMargin(0.20); TH2F *frame = new TH2F("frame","",10,-3,3,4,0,4); frame->SetStats(0); frame->GetXaxis()->SetTitle("Shift(cm)"); frame->GetYaxis()->SetLabelSize(0.08); frame->GetYaxis()->SetBinLabel(1,"module"); frame->GetYaxis()->SetBinLabel(2,"barrel"); frame->GetYaxis()->SetBinLabel(3,"cylinder"); frame->GetYaxis()->SetBinLabel(4,"ladder"); frame->Draw(); TBox *box = new TBox(-2,0,2,4); box->SetFillColor(16); box->Draw(); TGraph *graph = new TGraph(4); graph->SetMarkerStyle(20); graph->SetMarkerSize(2.5); graph->SetPoint(0,-0.3,0.5); graph->SetPoint(1,0.1,1.5); graph->SetPoint(2,-0.8,2.5); graph->SetPoint(3,0.9,3.5); graph->Draw("p"); TLine line; line.SetLineStyle(2); line.DrawLine(-1,0,-1,4); line.DrawLine( 1,0, 1,4); c1->RedrawAxis(); }