def plot_bias_in_all_bins(biases, mean_bias, centre_of_mass, channel, variable, tau_value, output_folder, output_formats, bin_edges): h_bias = Hist(bin_edges, type='D') n_bins = h_bias.nbins() assert len(biases) == n_bins for i, bias in enumerate(biases): h_bias.SetBinContent(i+1, bias) histogram_properties = Histogram_properties() name_mpt = 'bias_{0}_{1}_{2}TeV' histogram_properties.name = name_mpt.format( variable, channel, centre_of_mass ) histogram_properties.y_axis_title = 'Bias' histogram_properties.x_axis_title = latex_labels.variables_latex[variable] title = 'pull distribution mean \& sigma for {0}'.format(tau_value) histogram_properties.title = title histogram_properties.y_limits = [0, 10] histogram_properties.xerr = True compare_measurements( models={ 'Mean bias':make_line_hist(bin_edges, mean_bias) }, measurements={ 'Bias': h_bias }, show_measurement_errors=True, histogram_properties=histogram_properties, save_folder=output_folder, save_as=output_formats)
def plot_bias_in_all_bins(biases, mean_bias, centre_of_mass, channel, variable, tau_value, output_folder, output_formats, bin_edges): h_bias = Hist(bin_edges, type='D') n_bins = h_bias.nbins() assert len(biases) == n_bins for i, bias in enumerate(biases): h_bias.SetBinContent(i + 1, bias) histogram_properties = Histogram_properties() name_mpt = 'bias_{0}_{1}_{2}TeV' histogram_properties.name = name_mpt.format(variable, channel, centre_of_mass) histogram_properties.y_axis_title = 'Bias' histogram_properties.x_axis_title = latex_labels.variables_latex[variable] title = 'pull distribution mean \& sigma for {0}'.format(tau_value) histogram_properties.title = title histogram_properties.y_limits = [0, 10] histogram_properties.xerr = True compare_measurements( models={'Mean bias': make_line_hist(bin_edges, mean_bias)}, measurements={'Bias': h_bias}, show_measurement_errors=True, histogram_properties=histogram_properties, save_folder=output_folder, save_as=output_formats)
def plot_fit_results(fit_results, centre_of_mass, channel, variable, k_value, tau_value, output_folder, output_formats, bin_edges): h_mean = Hist(bin_edges, type='D') h_sigma = Hist(bin_edges, type='D') n_bins = h_mean.nbins() assert len(fit_results) == n_bins mean_abs_pull = 0 for i, fr in enumerate(fit_results): mean_abs_pull += abs(fr.mean) h_mean.SetBinContent(i + 1, fr.mean) h_mean.SetBinError(i + 1, fr.meanError) h_sigma.SetBinContent(i + 1, fr.sigma) h_sigma.SetBinError(i + 1, fr.sigmaError) mean_abs_pull /= n_bins histogram_properties = Histogram_properties() name_mpt = 'pull_distribution_mean_and_sigma_{0}_{1}_{2}TeV' histogram_properties.name = name_mpt.format( variable, channel, centre_of_mass ) histogram_properties.y_axis_title = r'$\mu_{\text{pull}}$ ($\sigma_{\text{pull}}$)' histogram_properties.x_axis_title = latex_labels.variables_latex[variable] histogram_properties.legend_location = (0.98, 0.48) value = get_value_title(k_value, tau_value) title = 'pull distribution mean \& sigma for {0}'.format(tau_value) histogram_properties.title = title histogram_properties.y_limits = [-2, 2] histogram_properties.xerr = True compare_measurements( models={ # 'mean $|\mu|$':make_line_hist(bin_edges,mean_abs_pull), 'ideal $\mu$': make_line_hist(bin_edges, 0), 'ideal $\sigma$': make_line_hist(bin_edges, 1), }, measurements={ r'$\mu_{\text{pull}}$': h_mean, r'$\sigma_{\text{pull}}$': h_sigma }, show_measurement_errors=True, histogram_properties=histogram_properties, save_folder=output_folder, save_as=output_formats)
def plot_fit_results(fit_results, centre_of_mass, channel, variable, k_value, tau_value, output_folder, output_formats, bin_edges): h_mean = Hist(bin_edges, type='D') h_sigma = Hist(bin_edges, type='D') n_bins = h_mean.nbins() assert len(fit_results) == n_bins mean_abs_pull = 0 for i, fr in enumerate(fit_results): mean_abs_pull += abs(fr.mean) h_mean.SetBinContent(i + 1, fr.mean) h_mean.SetBinError(i + 1, fr.meanError) h_sigma.SetBinContent(i + 1, fr.sigma) h_sigma.SetBinError(i + 1, fr.sigmaError) mean_abs_pull /= n_bins histogram_properties = Histogram_properties() name_mpt = 'pull_distribution_mean_and_sigma_{0}_{1}_{2}TeV' histogram_properties.name = name_mpt.format(variable, channel, centre_of_mass) histogram_properties.y_axis_title = r'$\mu_{\text{pull}}$ ($\sigma_{\text{pull}}$)' histogram_properties.x_axis_title = latex_labels.variables_latex[variable] histogram_properties.legend_location = (0.98, 0.48) value = get_value_title(k_value, tau_value) title = 'pull distribution mean \& sigma for {0}'.format(tau_value) histogram_properties.title = title histogram_properties.y_limits = [-2, 2] histogram_properties.xerr = True compare_measurements( models={ # 'mean $|\mu|$':make_line_hist(bin_edges,mean_abs_pull), 'ideal $\mu$': make_line_hist(bin_edges, 0), 'ideal $\sigma$': make_line_hist(bin_edges, 1), }, measurements={ r'$\mu_{\text{pull}}$': h_mean, r'$\sigma_{\text{pull}}$': h_sigma }, show_measurement_errors=True, histogram_properties=histogram_properties, save_folder=output_folder, save_as=output_formats)