'The constructor takes one required argument, an Axes
instance, followed by the args and kwargs described
by the following pylab interface documentation:
%(barbs_doc)s'

@docstring.interpd
def __init__(self, ax, *args, **kw):

    self._pivot = kw.pop(u'pivot', u'tip')
    self._length = kw.pop(u'length', 7)
    barbcolor = kw.pop(u'barbcolor', None)
    flagcolor = kw.pop(u'flagcolor', None)
    self.sizes = kw.pop(u'sizes', dict())
    self.fill_empty = kw.pop(u'fill_empty', False)
    self.barb_increments = kw.pop(u'barb_increments', dict())
    self.rounding = kw.pop(u'rounding', True)
    self.flip = kw.pop(u'flip_barb', False)
    transform = kw.pop(u'transform', ax.transData)
    if (None in (barbcolor, flagcolor)):
        kw[u'edgecolors'] = u'face'
        if flagcolor:
            kw[u'facecolors'] = flagcolor
        elif barbcolor:
            kw[u'facecolors'] = barbcolor
        else:
            kw.setdefault(u'facecolors', u'k')
    else:
        kw[u'edgecolors'] = barbcolor
        kw[u'facecolors'] = flagcolor
    if ((u'linewidth' not in kw) and (u'lw' not in kw)):
        kw[u'linewidth'] = 1
    (x, y, u, v, c) = _parse_args(*args)
    self.x = x
    self.y = y
    xy = np.hstack((x[:, np.newaxis], y[:, np.newaxis]))
    barb_size = ((self._length ** 2) / 4)
    mcollections.PolyCollection.__init__(self, [], (barb_size,), offsets=xy, transOffset=transform, **kw)
    self.set_transform(transforms.IdentityTransform())
    self.set_UVC(u, v, c)
