# Add another function. gauss1 = Function ( "Gaussian", datarep1 ) gauss1.addTo ( hist ) # Do another fit, should fit to linear sum gauss1.fit () # Add Chi-squared per d.f. display canvas.addTextRep ( hist, 'Chi-squared' ) # Create an NTuple from the histogram. # Calculate the residuals result = hist.createNTuple () ntc.registerNTuple ( result ) coords = result.getColumn ( 'Cost' ) values = result.getColumn ( 'Density' ) res = [] for i in range ( result.rows ) : x = coords[i] diff = values[i] - gauss1.valueAt ( x ) res.append ( diff ) # Add a column and display it. result.addColumn ( 'residuals', res ) resplot=Display ( "XY Plot", result, ( 'Cost', 'residuals', 'nil', 'Error' ) ) canvas.addDisplay ( resplot )