'Add a centered title to the figure.
kwargs are :class:`matplotlib.text.Text` properties.  Using figure
coordinates, the defaults are:
x : 0.5
The x location of the text in figure coords
y : 0.98
The y location of the text in figure coords
horizontalalignment : \'center\'
The horizontal alignment of the text
verticalalignment : \'top\'
The vertical alignment of the text
If the `fontproperties` keyword argument is given then the
rcParams defaults for `fontsize` (`figure.titlesize`) and
`fontweight` (`figure.titleweight`) will be ignored in favour
of the `FontProperties` defaults.
A :class:`matplotlib.text.Text` instance is returned.
Example::
fig.suptitle(\'this is the figure title\', fontsize=12)'

def suptitle(self, t, **kwargs):

    x = kwargs.pop(u'x', 0.5)
    y = kwargs.pop(u'y', 0.98)
    if ((u'horizontalalignment' not in kwargs) and (u'ha' not in kwargs)):
        kwargs[u'horizontalalignment'] = u'center'
    if ((u'verticalalignment' not in kwargs) and (u'va' not in kwargs)):
        kwargs[u'verticalalignment'] = u'top'
    if (u'fontproperties' not in kwargs):
        if ((u'fontsize' not in kwargs) and (u'size' not in kwargs)):
            kwargs[u'size'] = rcParams[u'figure.titlesize']
        if ((u'fontweight' not in kwargs) and (u'weight' not in kwargs)):
            kwargs[u'weight'] = rcParams[u'figure.titleweight']
    sup = self.text(x, y, t, **kwargs)
    if (self._suptitle is not None):
        self._suptitle.set_text(t)
        self._suptitle.set_position((x, y))
        self._suptitle.update_from(sup)
        sup.remove()
    else:
        self._suptitle = sup
    self.stale = True
    return self._suptitle
