Acoustic inversion: Refactoring sand plot.
parent
abce4bac07
commit
5ce7ffb52b
|
|
@ -1551,121 +1551,120 @@ class AcousticInversionTab(QWidget):
|
|||
)
|
||||
|
||||
def plot_measured_vs_inverted_SSC_sand(self):
|
||||
data_id = self.combobox_acoustic_data_choice.currentIndex()
|
||||
|
||||
if self.combobox_acoustic_data_choice.count() <= 0:
|
||||
return
|
||||
|
||||
if stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()].shape == (0,):
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.removeWidget(
|
||||
self.toolbar_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.removeWidget(
|
||||
self.canvas_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand\
|
||||
.removeWidget(self.toolbar_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand\
|
||||
.removeWidget(self.canvas_inverted_vs_measured_SSC_sand)
|
||||
|
||||
if stg.SSC_sand[data_id].shape == (0,):
|
||||
self.canvas_inverted_vs_measured_SSC_sand = FigureCanvas()
|
||||
self.toolbar_inverted_vs_measured_SSC_sand = NavigationToolBar(
|
||||
self.canvas_inverted_vs_measured_SSC_sand, self)
|
||||
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.addWidget(
|
||||
self.toolbar_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.addWidget(
|
||||
self.canvas_inverted_vs_measured_SSC_sand)
|
||||
|
||||
self.canvas_inverted_vs_measured_SSC_sand, self
|
||||
)
|
||||
else:
|
||||
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.removeWidget(
|
||||
self.toolbar_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.removeWidget(
|
||||
self.canvas_inverted_vs_measured_SSC_sand)
|
||||
|
||||
if self.figure_measured_vs_inverted_sand is not None:
|
||||
self.figure_measured_vs_inverted_sand.clear()
|
||||
plt.close(fig=self.figure_measured_vs_inverted_sand)
|
||||
|
||||
fig, ax = plt.subplots(nrows=1, ncols=1, layout="constrained")
|
||||
|
||||
self.figure_measured_vs_inverted_sand = fig
|
||||
self.axis_measured_vs_inverted_sand = ax
|
||||
|
||||
self.canvas_inverted_vs_measured_SSC_sand = FigureCanvas(
|
||||
self.figure_measured_vs_inverted_sand
|
||||
)
|
||||
self.toolbar_inverted_vs_measured_SSC_sand = NavigationToolBar(
|
||||
self.canvas_inverted_vs_measured_SSC_sand, self
|
||||
)
|
||||
|
||||
self.canvas_inverted_vs_measured_SSC_sand = FigureCanvas(self.figure_measured_vs_inverted_sand)
|
||||
self.toolbar_inverted_vs_measured_SSC_sand = NavigationToolBar(self.canvas_inverted_vs_measured_SSC_sand, self)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand\
|
||||
.addWidget(self.toolbar_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand\
|
||||
.addWidget(self.canvas_inverted_vs_measured_SSC_sand)
|
||||
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.addWidget(
|
||||
self.toolbar_inverted_vs_measured_SSC_sand)
|
||||
self.verticalLayout_groupbox_plot_measured_vs_inverted_SSC_sand.addWidget(
|
||||
self.canvas_inverted_vs_measured_SSC_sand)
|
||||
if stg.SSC_sand[data_id].shape != (0,):
|
||||
sand_id = self.combobox_sand_sample_choice.currentData()
|
||||
|
||||
self.sand_sample_to_plot = [int(f[1:]) - 1 for f in self.combobox_sand_sample_choice.currentData()]
|
||||
self.sand_sample_to_plot = [
|
||||
int(f[1:]) - 1 for f in sand_id
|
||||
]
|
||||
|
||||
if self.sand_sample_to_plot:
|
||||
|
||||
self.axis_measured_vs_inverted_sand.plot(
|
||||
[stg.Ctot_sand[k] for k in self.sand_sample_to_plot],
|
||||
[stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[k][1],
|
||||
stg.sand_sample_position[k][0]] for k in
|
||||
self.sand_sample_to_plot],
|
||||
ls=" ", marker='o', ms=5, mec='black', mfc="black"
|
||||
)
|
||||
|
||||
self.axis_measured_vs_inverted_sand.plot(
|
||||
[0, np.nanmax([np.nanmax([stg.Ctot_sand[c] for c in self.sand_sample_to_plot]),
|
||||
np.nanmax([stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]]
|
||||
for i in self.sand_sample_to_plot])]) + 1],
|
||||
[0, np.nanmax([np.nanmax([stg.Ctot_sand[c] for c in self.sand_sample_to_plot]),
|
||||
np.nanmax([stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]]
|
||||
for i in self.sand_sample_to_plot])]) + 1],
|
||||
ls="solid", linewidth=1, color="k"
|
||||
)
|
||||
|
||||
# --- Display sample label on plot ---
|
||||
for i in self.sand_sample_to_plot:
|
||||
self.axis_measured_vs_inverted_sand.text(
|
||||
stg.Ctot_sand[i],
|
||||
stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]],
|
||||
stg.sample_sand[i][0],
|
||||
fontstyle="normal", fontweight="light", fontsize=10)
|
||||
|
||||
sand_range = lambda : self.sand_sample_to_plot
|
||||
else:
|
||||
sand_range = lambda : range(len(stg.sample_sand))
|
||||
|
||||
self.axis_measured_vs_inverted_sand.plot(
|
||||
[stg.Ctot_sand[k] for k in range(len(stg.sample_sand))],
|
||||
[stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[k][1],
|
||||
stg.sand_sample_position[k][0]] for k in
|
||||
range(len(stg.sample_sand))],
|
||||
ls=" ", marker='o', ms=5, mec='black', mfc="black"
|
||||
self.axis_measured_vs_inverted_sand.plot(
|
||||
[stg.Ctot_sand[k] for k in sand_range()],
|
||||
[
|
||||
stg.SSC_sand[data_id][
|
||||
stg.sand_sample_position[k][1],
|
||||
stg.sand_sample_position[k][0]
|
||||
] for k in sand_range()
|
||||
],
|
||||
ls=" ", marker='o', ms=5, mec='black', mfc="black"
|
||||
)
|
||||
|
||||
self.axis_measured_vs_inverted_sand.plot(
|
||||
[
|
||||
0, np.nanmax(
|
||||
[
|
||||
np.nanmax(
|
||||
[stg.Ctot_sand[c] for c in sand_range()]
|
||||
),
|
||||
np.nanmax(
|
||||
[
|
||||
stg.SSC_sand[data_id][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]
|
||||
] for i in sand_range()
|
||||
]
|
||||
)
|
||||
]
|
||||
) + 1
|
||||
],
|
||||
[
|
||||
0, np.nanmax(
|
||||
[
|
||||
np.nanmax(
|
||||
[stg.Ctot_sand[c] for c in sand_range()]
|
||||
),
|
||||
np.nanmax(
|
||||
[
|
||||
stg.SSC_sand[data_id][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]
|
||||
] for i in sand_range()
|
||||
]
|
||||
)
|
||||
]
|
||||
) + 1
|
||||
],
|
||||
ls="solid", linewidth=1, color="k"
|
||||
)
|
||||
|
||||
# --- Display sample label on plot ---
|
||||
for i in sand_range():
|
||||
self.axis_measured_vs_inverted_sand.text(
|
||||
stg.Ctot_sand[i],
|
||||
stg.SSC_sand[data_id][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]
|
||||
],
|
||||
stg.sample_sand[i][0],
|
||||
fontstyle="normal", fontweight="light", fontsize=10
|
||||
)
|
||||
|
||||
self.axis_measured_vs_inverted_sand.plot(
|
||||
[0, np.nanmax([np.nanmax([stg.Ctot_sand[c] for c in range(len(stg.sample_sand))]),
|
||||
np.nanmax([stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]]
|
||||
for i in range(len(stg.sample_sand))])]) + 1],
|
||||
[0, np.nanmax([np.nanmax([stg.Ctot_sand[c] for c in range(len(stg.sample_sand))]),
|
||||
np.nanmax([stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[i][1],
|
||||
stg.sand_sample_position[i][0]]
|
||||
for i in range(len(stg.sample_sand))])]) + 1],
|
||||
ls="solid", linewidth=1, color="k"
|
||||
)
|
||||
|
||||
for j in range(len(stg.sample_sand)):
|
||||
self.axis_measured_vs_inverted_sand.text(
|
||||
stg.Ctot_sand[j],
|
||||
stg.SSC_sand[self.combobox_acoustic_data_choice.currentIndex()][
|
||||
stg.sand_sample_position[j][1],
|
||||
stg.sand_sample_position[j][0]],
|
||||
stg.sample_sand[j][0],
|
||||
fontstyle="normal", fontweight="light", fontsize=10)
|
||||
|
||||
self.axis_measured_vs_inverted_sand.set_xlabel("Measured SSC sand (g/L)")
|
||||
self.axis_measured_vs_inverted_sand.set_ylabel("Inverted SSC sand (g/L)")
|
||||
self.axis_measured_vs_inverted_sand\
|
||||
.set_xlabel("Measured SSC sand (g/L)")
|
||||
self.axis_measured_vs_inverted_sand\
|
||||
.set_ylabel("Inverted SSC sand (g/L)")
|
||||
|
||||
self.figure_measured_vs_inverted_sand.canvas.draw_idle()
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue