二次元ヒストグラムでなんかの分布を見て、一番データが集中してるところでのx, yの値がほしいときがよくある
ヒストグラムの名前をhist1とすると、
int maxbin; int maximum_xbin; int maximum_ybin; int dammyz; double maximum_x; double maximum_y; maxbin = hist1->GetMaximumBin(); //グローバルなbinの値をとってくる hist1->GetBinXYZ(maxbin, maximum_xbin, maximum_ybin, dammyz); //グローバルなbinの値を、x,y,z軸それぞれのbin番号に変える(今は二次元なのでzはダミー) maximum_x = hist1->GetXaxis()->GetBinCenter(maximum_xbin); //bin番号を、その軸上での値に変える maximum_y = hist1->GetYaxis()->GetBinCenter(maximum_ybin);
とする。Hough変換とかで便利
コンパイルして使用している場合、これらの関数はTH1で定義されているので、TH1.hをincludeする