From ffef8a7753f9d8426a9d346299accc601b090416 Mon Sep 17 00:00:00 2001 From: Martin Killenberg <martin.killenberg@desy.de> Date: Mon, 9 Jan 2023 16:35:28 +0100 Subject: [PATCH] split plot function into reading of CVS and plotting of data frame --- Python_script/prototype.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/Python_script/prototype.py b/Python_script/prototype.py index 58c2710..cdef1f1 100755 --- a/Python_script/prototype.py +++ b/Python_script/prototype.py @@ -275,18 +275,18 @@ class Measurements: return (target_hum-self.max_delta_hum <= float(readback_hum)) and \ (float(readback_hum) <= target_hum+self.max_delta_hum) -def plot_output(output_basename, show_plot_window, save_pdf=True): - csv_data = pd.read_csv(output_basename+'.csv') +# plot a single measurement (phase, magnitude, temp and hum against time) from a pandas data frame +def plot_measurement(data_frame, show_plot_window, save_pdf=True): fig, ax1 = plt.subplots(2, figsize=(12, 10)) fig.suptitle("Graphical representation of chamber output", color="red") - path_collection01 = ax1[0].scatter(csv_data.TIMESTAMP, csv_data.S21_PHASE, c='red', marker='<', label='Phase') + path_collection01 = ax1[0].scatter(data_frame.TIMESTAMP, data_frame.S21_PHASE, c='red', marker='<', label='Phase') twin2_0 = ax1[0].twinx() - path_collection02 = twin2_0.scatter(csv_data.TIMESTAMP, csv_data.S21_MAGNITUDE, c='#3120E0', marker='4', + path_collection02 = twin2_0.scatter(data_frame.TIMESTAMP, data_frame.S21_MAGNITUDE, c='#3120E0', marker='4', label='Magnitude') twin3_0 = ax1[0].twinx() twin3_0.spines['right'].set_position(('outward', 40)) - path_collection03 = twin3_0.scatter(csv_data.TIMESTAMP, csv_data.EQUILIBRIUM_INDICATOR, c='black', marker=".", + path_collection03 = twin3_0.scatter(data_frame.TIMESTAMP, data_frame.EQUILIBRIUM_INDICATOR, c='black', marker=".", label='Equilibrium_Indicator') ax1[0].set_xlabel("TIMESTAMP") ax1[0].set_ylabel("PHASE", color='red') @@ -298,14 +298,14 @@ def plot_output(output_basename, show_plot_window, save_pdf=True): labels = [pc.get_label() for pc in all_path_collections] ax1[0].legend(all_path_collections, labels, loc='lower right') - path_collection11 = ax1[1].scatter(csv_data.TIMESTAMP, csv_data.READBACK_TEMPERATURE, c='blue', marker='p', + path_collection11 = ax1[1].scatter(data_frame.TIMESTAMP, data_frame.READBACK_TEMPERATURE, c='blue', marker='p', label="Temperature") twin2_1 = ax1[1].twinx() - path_collection12 = twin2_1.scatter(csv_data.TIMESTAMP, csv_data.READBACK_HUMIDITY, c='green', marker="*", + path_collection12 = twin2_1.scatter(data_frame.TIMESTAMP, data_frame.READBACK_HUMIDITY, c='green', marker="*", label="Humidity") twin3_1 = ax1[1].twinx() twin3_1.spines['right'].set_position(('outward', 40)) - path_collection13 = twin3_1.scatter(csv_data.TIMESTAMP, csv_data.EQUILIBRIUM_INDICATOR, c='black', marker=".", + path_collection13 = twin3_1.scatter(data_frame.TIMESTAMP, data_frame.EQUILIBRIUM_INDICATOR, c='black', marker=".", label="Equilibrium_Indicator") ax1[1].set_xlabel("TIMESTAMP") ax1[1].set_ylabel("TEMPERATURE ", color='blue') @@ -322,7 +322,10 @@ def plot_output(output_basename, show_plot_window, save_pdf=True): if show_plot_window: plt.show() - +def plot_output(output_basename, show_plot_window, save_pdf=True): + data_frame = pd.read_csv(output_basename+'.csv') + plot_measurement(data_frame, show_plot_window, save_pdf) + if __name__ == '__main__': parser = ArgumentParser() parser.add_argument("-c", "--chamber", -- GitLab