@@ -447,7 +447,7 @@ class Quiver(mcollections.PolyCollection):
447447 The API methods are set_UVC(), set_U(), set_V() and set_C(), which
448448 can be used to change the size, orientation, and color of the
449449 arrows; their locations are fixed when the class is
450- instantiated. Possibly this method will be useful
450+ instantiated. Possibly these methods will be useful
451451 in animations.
452452
453453 Much of the work in this class is done in the draw()
@@ -475,8 +475,6 @@ def __init__(self, ax, *args,
475475 X , Y , U , V , C = _parse_args (* args , caller_name = 'quiver' )
476476 self .X = X
477477 self .Y = Y
478- self .XY = np .column_stack ((X , Y ))
479- self .N = len (X )
480478 self .scale = scale
481479 self .headwidth = headwidth
482480 self .headlength = float (headlength )
@@ -523,6 +521,14 @@ def _init(self):
523521
524522 self ._dpi_at_last_init = self .axes .figure .dpi
525523
524+ @property
525+ def N (self ):
526+ return len (self .X )
527+
528+ @property
529+ def XY (self ):
530+ return np .column_stack ((self .X , self .Y ))
531+
526532 def get_datalim (self , transData ):
527533 trans = self .get_transform ()
528534 offset_trf = self .get_offset_transform ()
@@ -588,6 +594,7 @@ def set_UVC(self, U, V, C=None):
588594 The size must the same as the existing U, V or be one.
589595 C : array-like or None, optional
590596 The arrow colors. The default is None.
597+ The size must the same as the existing U, V or be one.
591598 """
592599 if U is None :
593600 U = self .U
@@ -619,6 +626,19 @@ def set_UVC(self, U, V, C=None):
619626 self .set_array (C )
620627 self .stale = True
621628
629+ def set_offsets (self , xy ):
630+ """
631+ Set the offsets for the arrows. This saves the offsets passed
632+ in and masks them as appropriate for the existing X/Y data.
633+
634+ Parameters
635+ ----------
636+ xy : sequence of pairs of floats
637+ """
638+ self .X , self .Y = xy [:, 0 ], xy [:, 1 ]
639+ super ().set_offsets (xy )
640+ self .stale = True
641+
622642 def _dots_per_unit (self , units ):
623643 """Return a scale factor for converting from units to pixels."""
624644 bb = self .axes .bbox
0 commit comments