Internal helper function for making plots, returns a set of input values to plot as well as lower and upper limits

def x_frame1D(X,plot_limits=None,resolution=None):
    """
    Internal helper function for making plots, returns a set of input values to plot as well as lower and upper limits
    """
    assert X.shape[1] ==1, "x_frame1D is defined for one-dimensional inputs"
    if plot_limits is None:
        from GPy.core.parameterization.variational import VariationalPosterior
        if isinstance(X, VariationalPosterior):
            xmin,xmax = X.mean.min(0),X.mean.max(0)
        else:
            xmin,xmax = X.min(0),X.max(0)
        xmin, xmax = xmin-0.25*(xmax-xmin), xmax+0.25*(xmax-xmin)
    elif len(plot_limits) == 2:
        xmin, xmax = map(np.atleast_1d, plot_limits)
    else:
        raise ValueError("Bad limits for plotting")

    Xnew = np.linspace(float(xmin),float(xmax),int(resolution) or 200)[:,None]
    return Xnew, xmin, xmax