def get_plot_cmds(ax, ax_object_var): """Get commands such as axes.plot or axes.errorbar""" cmds = [] for artist in sorted_lines_in(ax, ax.get_tracked_artists()): cmds.append("{ax_obj}.{cmd}".format(ax_obj=ax_object_var, cmd=generate_plot_command(artist))) return cmds
def test_generate_plot_command_returns_correct_string_for_sample_log(self): kwargs = copy(LINE2D_KWARGS) kwargs["drawstyle"] = 'steps-post' kwargs.update({ "LogName": "my_log", "ExperimentInfo": 0, "Filtered": True }) # add a log AddTimeSeriesLog(self.test_ws, Name="my_log", Time="2010-01-01T00:00:00", Value=100) AddTimeSeriesLog(self.test_ws, Name="my_log", Time="2010-01-01T00:30:00", Value=15) AddTimeSeriesLog(self.test_ws, Name="my_log", Time="2010-01-01T00:50:00", Value=100.2) line = self.ax.plot(self.test_ws, **kwargs)[0] output = generate_plot_command(line) expected_command = ("plot({}, {})".format( self.test_ws.name(), convert_args_to_string(None, kwargs))) self.assertEqual(expected_command, output)
def test_generate_plot_command_returns_correct_string_for_line2d(self): kwargs = copy(LINE2D_KWARGS) kwargs.update(MANTID_ONLY_KWARGS) line = self.ax.plot(self.test_ws, **kwargs)[0] output = generate_plot_command(line) expected_command = ("plot({}, {})".format( self.test_ws.name(), convert_args_to_string(None, kwargs))) self.assertEqual(expected_command, output)
def test_generate_plot_command_returns_correct_string_for_errorbar_container( self): kwargs = copy(ERRORBAR_KWARGS) kwargs.pop('markeredgewidth') kwargs.update(MANTID_ONLY_KWARGS) err_cont = self.ax.errorbar(self.test_ws, **kwargs) output = generate_plot_command(err_cont) expected_command = ("errorbar({}, {})".format( self.test_ws.name(), convert_args_to_string(None, kwargs))) self.assertEqual(expected_command, output)