//  [python]
def plot_mpc_rl(self, i):
        episode2plot = self.comp_data_for_all_episodes[i] if i is not None else self.comp_list_for_an_episode
        real_time = np.array([0.1 * i for i in range(len(episode2plot))])
        all_data = [np.array([vals_in_a_timestep[index] for vals_in_a_timestep in episode2plot])
                    for index in range(len(self.comp2record))]
        data_dict = dict(zip(self.comp2record, all_data))

        df_mpc = pd.DataFrame({'algorithms': 'MPC',
                               'iteration': real_time,
                               'steer': data_dict['mpc_steer'],
                               'acc': data_dict['mpc_a_x'],
                               'time': data_dict['mpc_time'],
                               'ref_path': data_dict['mpc_ref'] + 1
                               })
        df_rl = pd.DataFrame({'algorithms': 'ADP',
                              'iteration': real_time,
                              'steer': data_dict['adp_steer'],
                              'acc': data_dict['adp_a_x'],
                              'time': data_dict['adp_time'],
                              'ref_path': data_dict['adp_ref'] + 1
                              })

        total_df = df_mpc.append([df_rl], ignore_index=True)
        f1 = plt.figure(1)
        ax1 = f1.add_axes([0.155, 0.12, 0.82, 0.86])
        sns.lineplot(x="iteration", y="steer", hue="algorithms", data=total_df, linewidth=2, palette="bright", )
        ax1.set_ylabel('Front wheel angle [$\circ$]', fontsize=15)
        ax1.set_xlabel("Time[s]", fontsize=15)
        ax1.legend(frameon=False, fontsize=15)
        plt.yticks(fontsize=15)
        plt.xticks(fontsize=15)

        f2 = plt.figure(2)
        ax2 = f2.add_axes([0.155, 0.12, 0.82, 0.86])
        sns.lineplot(x="iteration", y="acc", hue="algorithms", data=total_df, linewidth=2, palette="bright", )
        ax2.set_ylabel('Acceleration [$\mathrm {m/s^2}$]', fontsize=15)
        ax2.set_xlabel('Time[s]', fontsize=15)
        ax2.legend(frameon=False, fontsize=15)
        # plt.xlim(0, 3)
        # plt.ylim(-40, 80)
        plt.yticks(fontsize=15)
        plt.xticks(fontsize=15)

        f3 = plt.figure(3)
        ax3 = f3.add_axes([0.155, 0.12, 0.82, 0.86])
        sns.lineplot(x="iteration", y="time", hue="algorithms", data=total_df, linewidth=2, palette="bright", )
        plt.yscale('log')
        ax3.set_ylabel('Computing time [ms]', fontsize=15)
        ax3.set_xlabel("Time[s]", fontsize=15)
        handles, labels = ax3.get_legend_handles_labels()
        # ax3.legend(handles=handles[1:], labels=labels[1:], loc='upper left', frameon=False, fontsize=15)
        ax3.legend(handles=handles[:], labels=labels[:], frameon=False, fontsize=15)
        plt.yticks(fontsize=15)
        plt.xticks(fontsize=15)

        f4 = plt.figure(4)
        ax4 = f4.add_axes([0.155, 0.12, 0.82, 0.86])
        sns.lineplot(x="iteration", y="ref_path", hue="algorithms", data=total_df, dashes=True, linewidth=2, palette="bright", )
        ax4.lines[1].set_linestyle("--")
        ax4.set_ylabel('Selected path', fontsize=15)
        ax4.set_xlabel("Time[s]", fontsize=15)
        ax4.yaxis.set_major_locator(plt.MaxNLocator(integer=True))
        ax4.legend(frameon=False, fontsize=15)
        # plt.xlim(0, 3)
        # plt.ylim(-40, 80)
        plt.yticks(fontsize=15)
        plt.xticks(fontsize=15)
        plt.show()