Reservoir: Apply new PamhyrPlot features.

setup.py
Pierre-Antoine Rouby 2024-02-16 11:22:29 +01:00
parent bfd166b717
commit d1d63c8c29
1 changed files with 22 additions and 28 deletions

View File

@ -46,56 +46,50 @@ class Plot(PamhyrPlot):
parent=parent parent=parent
) )
self._table_headers = self._trad.get_dict("table_headers")
self._mode = mode self._mode = mode
self._table_headers = self._trad.get_dict("table_headers")
self.label_x = self._table_headers["z"]
self.label_y = self._table_headers["Area"]
self._isometric_axis = False
self._auto_relim_update = True
self._autoscale_update = True
@timer @timer
def draw(self): def draw(self):
self.canvas.axes.cla() self.init_axes()
self.canvas.axes.grid(color='grey', linestyle='--', linewidth=0.5)
if len(self.data) == 0: if len(self.data) == 0:
self._init = False self._init = False
return return
# Plot data self.draw_data()
self.idle()
self._init = True
def draw_data(self):
x = list(map(lambda v: v[0], self.data.data)) x = list(map(lambda v: v[0], self.data.data))
y = list(map(lambda v: v[1], self.data.data)) y = list(map(lambda v: v[1], self.data.data))
self._line, = self.canvas.axes.plot( self._line, = self.canvas.axes.plot(
x, y, x, y,
color='r', lw=1., color=self.color_plot,
markersize=5, marker='+', **self.plot_default_kargs
picker=30,
) )
# Plot label
# header = self.data.header
self.canvas.axes.set_xlabel(
self._table_headers["z"], color='black', fontsize=10
)
self.canvas.axes.set_ylabel(
self._table_headers["Area"], color='black', fontsize=10
)
self.canvas.axes.autoscale_view(True, True, True)
self.canvas.figure.tight_layout()
self.canvas.figure.canvas.draw_idle()
# self.toolbar.update()
self._init = True
@timer @timer
def update(self, ind=None): def update(self, ind=None):
if not self._init: if not self._init:
self.draw() self.draw()
return return
self.update_data()
self.update_idle()
def update_data(self):
x = list(map(lambda v: v[0], self.data.data)) x = list(map(lambda v: v[0], self.data.data))
y = list(map(lambda v: v[1], self.data.data)) y = list(map(lambda v: v[1], self.data.data))
self._line.set_data(x, y) self._line.set_data(x, y)
self.canvas.axes.relim()
self.canvas.axes.autoscale()
self.canvas.figure.tight_layout()
self.canvas.figure.canvas.draw_idle()