mass_spectrum.molecular_search_settings.isRadical = False mass_spectrum.molecular_search_settings.isAdduct = True SearchMolecularFormulas(mass_spectrum, first_hit=False).run_worker_mass_spectrum() mass_spectrum.percentile_assigned() mass_spectrum_by_classes = HeteroatomsClassification( mass_spectrum, choose_molecular_formula=False) mass_spectrum_by_classes.plot_ms_assigned_unassigned() plt.show() all_classes = 0 for classe in mass_spectrum_by_classes.get_classes(threshold_perc=0, isotopologue=True): mass_spectrum_by_classes.plot_dbe_vs_carbon_number(classe) #plt.show() mass_spectrum_by_classes.plot_ms_class(classe) plt.show() mass_spectrum_by_classes.plot_mz_error_class(classe) mz_calc_l = mass_spectrum_by_classes.mz_calc(classe) mf_l = mass_spectrum_by_classes.molecular_formula(classe) print( "# Name; m/z value; charge; ion formula; collision cross section [A^2]"
def create_plots(mass_spectrum, workflow_params, dirloc): ms_by_classes = HeteroatomsClassification(mass_spectrum, choose_molecular_formula=False) if workflow_params.plot_ms_assigned_unassigned: print("Plotting assigned vs. unassigned mass spectrum") ax_ms = ms_by_classes.plot_ms_assigned_unassigned() plt.savefig(dirloc / "assigned_unassigned.png", bbox_inches='tight') plt.clf() if workflow_params.plot_mz_error: print("Plotting mz_error") ax_ms = ms_by_classes.plot_mz_error() plt.savefig(dirloc / "mz_error.png", bbox_inches='tight') plt.clf() if workflow_params.plot_van_krevelen: van_krevelen_dirloc = dirloc / "van_krevelen" van_krevelen_dirloc.mkdir(exist_ok=True, parents=True) if workflow_params.plot_c_dbe: c_dbe_dirloc = dirloc / "dbe_vs_c" c_dbe_dirloc.mkdir(exist_ok=True, parents=True) if workflow_params.plot_ms_classes: ms_class_dirloc = dirloc / "ms_class" ms_class_dirloc.mkdir(exist_ok=True, parents=True) if workflow_params.plot_mz_error_classes: mz_error_class_dirloc = dirloc / "mz_error_class" mz_error_class_dirloc.mkdir(exist_ok=True, parents=True) pbar = tqdm(ms_by_classes.get_classes()) for classe in pbar: pbar.set_description_str( desc="Plotting results for class {}".format(classe), refresh=True) if workflow_params.plot_van_krevelen: ax_c = ms_by_classes.plot_van_krevelen(classe) plt.savefig(van_krevelen_dirloc / "{}.png".format(classe), bbox_inches='tight') plt.clf() if workflow_params.plot_mz_error_classes: ax_c = ms_by_classes.plot_mz_error_class(classe) plt.savefig(mz_error_class_dirloc / "{}.png".format(classe), bbox_inches='tight') plt.clf() if workflow_params.plot_ms_classes: ax_c = ms_by_classes.plot_ms_class(classe) plt.savefig(ms_class_dirloc / "{}.png".format(classe), bbox_inches='tight') plt.clf() if workflow_params.plot_c_dbe: ax_c = ms_by_classes.plot_dbe_vs_carbon_number(classe) plt.savefig(c_dbe_dirloc / "{}.png".format(classe), bbox_inches='tight') plt.clf()