'A string representation of the coordinates.
The default styles definitions are::
\'decimal\': \'lat\': {\'decimal\': True, \'unit\': "deg"}
\'lon\': {\'decimal\': True, \'unit\': "deg"}
\'dms\': \'lat\': {\'unit\': "deg"}
\'lon\': {\'unit\': "deg"}
\'hmsdms\': \'lat\': {\'alwayssign\': True, \'pad\': True, \'unit\': "deg"}
\'lon\': {\'pad\': True, \'unit\': "hour"}
See :meth:`~astropy.coordinates.Angle.to_string` for details and
keyword arguments (the two angles forming the coordinates are are
both :class:`~astropy.coordinates.Angle` instances). Keyword
arguments have precedence over the style defaults and are passed
to :meth:`~astropy.coordinates.Angle.to_string`.
Parameters
style : {\'hmsdms\', \'dms\', \'decimal\'}
The formatting specification to use. These encode the three most
common ways to represent coordinates. The default is `decimal`.
kwargs
Keyword args passed to :meth:`~astropy.coordinates.Angle.to_string`.'

def to_string(self, style=u'decimal', **kwargs):

    sph_coord = self.frame.represent_as(SphericalRepresentation)
    styles = {u'hmsdms': {u'lonargs': {u'unit': u.hour, u'pad': True}, u'latargs': {u'unit': u.degree, u'pad': True, u'alwayssign': True}}, u'dms': {u'lonargs': {u'unit': u.degree}, u'latargs': {u'unit': u.degree}}, u'decimal': {u'lonargs': {u'unit': u.degree, u'decimal': True}, u'latargs': {u'unit': u.degree, u'decimal': True}}}
    lonargs = {}
    latargs = {}
    if (style in styles):
        lonargs.update(styles[style][u'lonargs'])
        latargs.update(styles[style][u'latargs'])
    else:
        raise ValueError(u'Invalid    style.        Valid    options    are:    {0}'.format(u','.join(styles)))
    lonargs.update(kwargs)
    latargs.update(kwargs)
    if np.isscalar(sph_coord.lon.value):
        coord_string = ((sph_coord.lon.to_string(**lonargs) + u'    ') + sph_coord.lat.to_string(**latargs))
    else:
        coord_string = []
        for (lonangle, latangle) in zip(sph_coord.lon.ravel(), sph_coord.lat.ravel()):
            coord_string += [((lonangle.to_string(**lonargs) + u'    ') + latangle.to_string(**latargs))]
        if (len(sph_coord.shape) > 1):
            coord_string = np.array(coord_string).reshape(sph_coord.shape)
    return coord_string
