plots the data contained in self.data, which should be a dictionary or a deque of dictionaries
        for the latter use the last entry
        Args:
            figure_list: list of figure objects that are passed to self.get_axes_layout to get axis objects for plotting

def plot(self, figure_list):
        """
        plots the data contained in self.data, which should be a dictionary or a deque of dictionaries
        for the latter use the last entry
        Args:
            figure_list: list of figure objects that are passed to self.get_axes_layout to get axis objects for plotting
        """
        # if there is not data we do not plot anything
        if not self.data:
            return

        # if plot function is called when script is not running we request a plot refresh
        if not self.is_running:
            self._plot_refresh = True

        axes_list = self.get_axes_layout(figure_list)
        if self._plot_refresh is True:
            self._plot(axes_list)
            self._plot_refresh = False
            for figure in figure_list:
                if figure.axes:
                    figure.set_tight_layout(True)
        else:
            self._update_plot(axes_list)