'Generate a "pretty" string representation of the object.
.. note::
This function only functions in the IPython shell or
Jupyter Notebooks.
Args:
Verbose (bool, optional) :
This is a conventional argument for IPython representation
printers but is unused by Bokeh. (default: False)
max_width (int, optional) :
Minimum width to start breaking lines when possible. (default: 79)
newline (str, optional) :
Character to use to separate each line (default: ``\n``)
Returns:
str : pretty object representation
Raises:
ValueError, if ``IPython`` cannot be imported'

def pretty(self, verbose=False, max_width=79, newline='\n'):

    if (not IPython):
        cls = self.__class__
        raise RuntimeError(('%s.%s.pretty()    requires    IPython' % (cls.__module__, cls.__name__)))
    else:
        stream = StringIO()
        printer = _BokehPrettyPrinter(stream, verbose, max_width, newline)
        printer.pretty(self)
        printer.flush()
        return stream.getvalue()
