'set the *dataLim* and *viewLim*
:class:`~matplotlib.transforms.Bbox` attributes and the
*transScale*, *transData*, *transLimits* and *transAxes*
transformations.
.. note::
This method is primarily used by rectilinear projections
of the :class:`~matplotlib.axes.Axes` class, and is meant
to be overridden by new kinds of projection axes that need
different transformations and limits. (See
:class:`~matplotlib.projections.polar.PolarAxes` for an
example.'

def _set_lim_and_transforms(self):

    self.transAxes = mtransforms.BboxTransformTo(self.bbox)
    self.transScale = mtransforms.TransformWrapper(mtransforms.IdentityTransform())
    self.transLimits = mtransforms.BboxTransformFrom(mtransforms.TransformedBbox(self.viewLim, self.transScale))
    self.transData = (self.transScale + (self.transLimits + self.transAxes))
    self._xaxis_transform = mtransforms.blended_transform_factory(self.transData, self.transAxes)
    self._yaxis_transform = mtransforms.blended_transform_factory(self.transAxes, self.transData)
