From 607306ae0fb5c5781e8484ca3fd6aa5eadb2d68c Mon Sep 17 00:00:00 2001 From: Danilo Ferreira de Lima <danilo.enoque.ferreira.de.lima@xfel.de> Date: Wed, 16 Aug 2023 14:56:39 +0200 Subject: [PATCH] Added plot of the residuals correlation. --- pes_to_spec/test/prepare_plots.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/pes_to_spec/test/prepare_plots.py b/pes_to_spec/test/prepare_plots.py index 7953bf0..7dc0888 100755 --- a/pes_to_spec/test/prepare_plots.py +++ b/pes_to_spec/test/prepare_plots.py @@ -10,7 +10,6 @@ import numpy as np import matplotlib.pyplot as plt from matplotlib.gridspec import GridSpec import seaborn as sns -from scipy.interpolate import make_interp_spline, BSpline SMALL_SIZE = 12 MEDIUM_SIZE = 18 @@ -102,6 +101,19 @@ def plot_residue(df: pd.DataFrame, filename: str): fig.savefig(filename) plt.close(fig) +def plot_residue_corr(df: pd.DataFrame, filename: str): + cols = [k for k in df.columns if "res_prepca" in k] + df_res = df.loc[:, cols] + df_res.columns = [re.match(r"res_prepca_([0-9]*)", k).groups()[0] for k in df_res.columns] + fig = plt.figure(figsize=(8, 8)) + corr = df_res.corr() + mask = np.triu(np.ones_like(corr, dtype=bool)) + cmap = sns.diverging_palette(230, 20, as_cmap=True) + sns.heatmap(corr, mask=mask, cmap=cmap, center=0, + square=True, linewidths=0.5, vmin=-1, vmax=1) + fig.savefig(filename) + plt.close(fig) + def plot_chi2_intensity(df: pd.DataFrame, filename: str): fig = plt.figure(figsize=(12, 8)) gs = GridSpec(1, 1) @@ -286,6 +298,7 @@ if __name__ == '__main__': plot_rmse_intensity(pd.read_csv(f'{indir}/quality.csv'), f'intensity_vs_rmse.pdf') plot_residue(pd.read_csv(f'{indir}/quality.csv'), f'residue.pdf') + plot_residue_corr(pd.read_csv(f'{indir}/quality.csv'), f'residue_corr.pdf') df_model = pd.read_csv(f'{indir}/model.csv') df_model.impulse = df_model.impulse.str.replace('i','j').apply(lambda x: np.complex(x)) -- GitLab