Commit in java/trunk/users/src/main/java/org/hps/users/omoreno on MAIN
PlotUtils.java+34812 -> 813
Add method to get Y projection of a 2D histogram.

java/trunk/users/src/main/java/org/hps/users/omoreno
PlotUtils.java 812 -> 813
--- java/trunk/users/src/main/java/org/hps/users/omoreno/PlotUtils.java	2014-07-22 15:59:40 UTC (rev 812)
+++ java/trunk/users/src/main/java/org/hps/users/omoreno/PlotUtils.java	2014-07-22 16:44:21 UTC (rev 813)
@@ -1,6 +1,8 @@
 package org.hps.users.omoreno;
 
 import hep.aida.ICloud2D;
+import hep.aida.IFitResult;
+import hep.aida.IFitter;
 //--- hep ---//
 import hep.aida.IHistogram1D;
 import hep.aida.IHistogram2D;
@@ -99,5 +101,37 @@
         int region = ix * 4 + iy;
         return region;
     }
+   
+    public static IHistogram1D getYProjection(int binX, IHistogram2D histogram){
+    	int binsY = histogram.yAxis().bins();
+    	double yMin = histogram.yAxis().lowerEdge();
+    	double yMax = histogram.yAxis().upperEdge(); 
+    	
+    	IHistogram1D projection 
+    		= AIDA.defaultInstance().histogram1D(histogram.title() + "_" + binX, binsY, yMin, yMax);
+    	projection.reset();
+    	
+    	double dataY = 0; 
+    	for(int binY = 0; binY < binsY; binY++){
+    		dataY = histogram.binEntries(binX, binY);
+    		projection.fill(yMin, dataY);
+    		yMin++;
+    	}
+    	
+    	return projection; 
+    }
     
+    public static double[] fitToGuassian(IHistogram1D histogram){
+    	
+    	double[] fitParameters = {0, 0};
+    	IFitter fitter = AIDA.defaultInstance().analysisFactory().createFitFactory().createFitter();
+    	IFitResult fitResult = fitter.fit(histogram, "g");
+    	int meanIndex  = fitResult.fittedFunction().indexOfParameter("mean");
+    	fitParameters[0] = fitResult.fittedParameters()[meanIndex];
+
+    	int sigmaIndex  = fitResult.fittedFunction().indexOfParameter("sigma");
+    	fitParameters[1] = fitResult.fittedParameters()[sigmaIndex];
+    	
+		return fitParameters;
+    }
 }
SVNspam 0.1