def plot_ratio_return(self, isox, isoy, deltax=True, deltay=True):
<EOL>index_x, delta_b_x, ratio_b_x = self.check_availability(isox)<EOL>index_y, delta_b_y, ratio_b_y = self.check_availability(isoy)<EOL>if index_x == -<NUM_LIT:1> or index_y == -<NUM_LIT:1>:<EOL><INDENT>print('<STR_LIT>')<EOL>if index_x == -<NUM_LIT:1>:<EOL><INDENT>print('<STR_LIT>')<EOL><DEDENT>if index_y == -<NUM_LIT:1>:<EOL><INDENT>print('<STR_LIT>')<EOL><DEDENT>return None<EOL><DEDENT>xdata_vec = np.zeros((len(self.data)))<EOL>ydata_vec = np.zeros((len(self.data)))<EOL>xdata_err = np.zeros((len(self.data)))<EOL>ydata_err = np.zeros((len(self.data)))<EOL>for it in range(len(self.data)):<EOL><INDENT>xdata_vec[it] = self.data[it][index_x]<EOL>ydata_vec[it] = self.data[it][index_y]<EOL>xdata_err[it] = self.data[it][index_x+<NUM_LIT:1>]<EOL>ydata_err[it] = self.data[it][index_y+<NUM_LIT:1>]<EOL><DEDENT>index_nan = []<EOL>for it in range(len(xdata_vec)):<EOL><INDENT>if np.isnan(xdata_vec[it]) or np.isnan(ydata_vec[it]):<EOL><INDENT>index_nan.append(it)<EOL><DEDENT><DEDENT>index_filtered = list(range(len(xdata_vec)))<EOL>for it in range(len(index_nan)):<EOL><INDENT>index_filtered.remove(index_nan[it])<EOL><DEDENT>xdata_tmp = np.zeros((len(index_filtered)))<EOL>ydata_tmp = np.zeros((len(index_filtered)))<EOL>xerr_tmp  = np.zeros((len(index_filtered)))<EOL>yerr_tmp  = np.zeros((len(index_filtered)))<EOL>style_plt = np.zeros((len(index_filtered),len(self.header_style)),dtype='<STR_LIT>')<EOL>for i in range(len(index_filtered)):<EOL><INDENT>xdata_tmp[i] = xdata_vec[index_filtered[i]]<EOL>ydata_tmp[i] = ydata_vec[index_filtered[i]]<EOL>xerr_tmp[i]  = xdata_err[index_filtered[i]]<EOL>yerr_tmp[i]  = ydata_err[index_filtered[i]]<EOL>for j in range(len(style_plt[i])):<EOL><INDENT>style_plt[i][j] = self.style[index_filtered[i]][j]<EOL><DEDENT><DEDENT>xdata_vec = xdata_tmp<EOL>ydata_vec = ydata_tmp<EOL>xdata_err = xerr_tmp<EOL>ydata_err = yerr_tmp<EOL>for i in range(len(xdata_err)):<EOL><INDENT>if np.isnan(xdata_err[i]):<EOL><INDENT>xdata_err[i] = <NUM_LIT:0.><EOL><DEDENT>if np.isnan(ydata_err[i]):<EOL><INDENT>ydata_err[i] = <NUM_LIT:0.><EOL><DEDENT><DEDENT>start_stop = []<EOL>start = <NUM_LIT:0><EOL>for it in range(len(xdata_vec)-<NUM_LIT:1>):<EOL><INDENT>if (style_plt[it] == style_plt[it+<NUM_LIT:1>]).all():<EOL><INDENT>continue<EOL><DEDENT>else:<EOL><INDENT>stop = it + <NUM_LIT:1><EOL>start_stop.append([start,stop])<EOL>start = stop<EOL><DEDENT><DEDENT>if start_stop == []:<EOL><INDENT>start_stop.append([<NUM_LIT:0>,len(xdata_vec)])<EOL><DEDENT>else:<EOL><INDENT>start_stop.append([start_stop[len(start_stop)-<NUM_LIT:1>][<NUM_LIT:1>],len(xdata_vec)+<NUM_LIT:1>])<EOL><DEDENT>grain_plt_xdata = []<EOL>grain_plt_ydata = []<EOL>grain_plt_xerr  = []<EOL>grain_plt_yerr  = []<EOL>grain_plt_style = []<EOL>for i in range(len(start_stop)):<EOL><INDENT>grain_plt_xdata.append(xdata_vec[start_stop[i][<NUM_LIT:0>]:start_stop[i][<NUM_LIT:1>]])<EOL>grain_plt_ydata.append(ydata_vec[start_stop[i][<NUM_LIT:0>]:start_stop[i][<NUM_LIT:1>]])<EOL>grain_plt_xerr.append(xdata_err[start_stop[i][<NUM_LIT:0>]:start_stop[i][<NUM_LIT:1>]])<EOL>grain_plt_yerr.append(ydata_err[start_stop[i][<NUM_LIT:0>]:start_stop[i][<NUM_LIT:1>]])<EOL>grain_plt_style.append(style_plt[start_stop[i][<NUM_LIT:0>]])<EOL><DEDENT>return [grain_plt_xdata,grain_plt_xerr,grain_plt_ydata,grain_plt_yerr,grain_plt_style]<EOL>
This routine returns data isotopic data to plot from the
filtered list of data.

Parameters
----------
isox : list
    Isotopes for x axis in standard format ['Si-28','Si-30'].
isoy : list
    Same as isox but for y axis.
deltax : boolean, optional
    If true then x-axis values are in delta format.  The default
    is True.
deltay : boolean, optional
    Same as for x-axis but for y-axis.  The default is True.

Returns
-------
grpl_xdata
    grain plot x-axis data.
grpl_xerr
    x-axis error bars.
grpl_ydata
    grain plot y-axis data.
grpl_yerr
    y-axis error bars.
grpl_style
    style data for the different symbols.