matplotlib.pyplot.barbs#
- matplotlib.pyplot.barbs(*args,data=None,**kwargs)[source]#
Plot a 2D field of wind barbs.
Call signature:
barbs([X,Y],U,V,[C],/,**kwargs)
WhereX,Y define the barb locations,U,V define the barbdirections, andC optionally sets the color.
The argumentsX,Y,U,V,C are positional-only and may be1D or 2D.U,V,C may be masked arrays, but maskedX,Yare not supported at present.
Barbs are traditionally used in meteorology as a way to plot the speedand direction of wind observations, but can technically be used toplot any two dimensional vector quantity. As opposed to arrows, whichgive vector magnitude by the length of the arrow, the barbs give morequantitative information about the vector magnitude by putting slantedlines or a triangle for various increments in magnitude, as showschematically below:
:/\ \:/ \ \:/ \ \ \:/ \ \ \:------------------------------
The largest increment is given by a triangle (or "flag"). After thosecome full lines (barbs). The smallest increment is a half line. Thereis only, of course, ever at most 1 half line. If the magnitude issmall and only needs a single half-line and no full lines ortriangles, the half-line is offset from the end of the barb so that itcan be easily distinguished from barbs with a single full line. Themagnitude for the barb shown above would nominally be 65, using thestandard increments of 50, 10, and 5.
See alsohttps://en.wikipedia.org/wiki/Wind_barb.
- Parameters:
- X, Y1D or 2D array-like, optional
The x and y coordinates of the barb locations. Seepivot for how thebarbs are drawn to the x, y positions.
If not given, they will be generated as a uniform integer meshgrid basedon the dimensions ofU andV.
IfX andY are 1D butU,V are 2D,X,Y are expanded to 2Dusing
X,Y=np.meshgrid(X,Y). In this caselen(X)andlen(Y)must match the column and row dimensions ofU andV.- U, V1D or 2D array-like
The x and y components of the barb shaft.
- C1D or 2D array-like, optional
Numeric data that defines the barb colors by colormapping vianorm andcmap.
This does not support explicit colors. If you want to set colors directly,usebarbcolor instead.
- lengthfloat, default: 7
Length of the barb in points; the other parts of the barbare scaled against this.
- pivot{'tip', 'middle'} or float, default: 'tip'
The part of the arrow that is anchored to theX,Y grid. The barbrotates about this point. This can also be a number, which shifts thestart of the barb that many points away from grid point.
- barbcolorcolor or color sequence
The color of all parts of the barb except for the flags. This parameteris analogous to theedgecolor parameter for polygons, which can be usedinstead. However this parameter will override facecolor.
- flagcolorcolor or color sequence
The color of any flags on the barb. This parameter is analogous to thefacecolor parameter for polygons, which can be used instead. However,this parameter will override facecolor. If this is not set (andC hasnot either) thenflagcolor will be set to matchbarbcolor so that thebarb has a uniform color. IfC has been set,flagcolor has no effect.
- sizesdict, optional
A dictionary of coefficients specifying the ratio of a givenfeature to the length of the barb. Only those values one wishes tooverride need to be included. These features include:
'spacing' - space between features (flags, full/half barbs)
'height' - height (distance from shaft to top) of a flag or full barb
'width' - width of a flag, twice the width of a full barb
'emptybarb' - radius of the circle used for low magnitudes
- fill_emptybool, default: False
Whether the empty barbs (circles) that are drawn should be filled withthe flag color. If they are not filled, the center is transparent.
- roundingbool, default: True
Whether the vector magnitude should be rounded when allocating barbcomponents. If True, the magnitude is rounded to the nearest multipleof the half-barb increment. If False, the magnitude is simply truncatedto the next lowest multiple.
- barb_incrementsdict, optional
A dictionary of increments specifying values to associate withdifferent parts of the barb. Only those values one wishes tooverride need to be included.
'half' - half barbs (Default is 5)
'full' - full barbs (Default is 10)
'flag' - flags (default is 50)
- flip_barbbool or array-like of bool, default: False
Whether the lines and flags should point opposite to normal.Normal behavior is for the barbs and lines to point right (comes from windbarbs having these features point towards low pressure in the NorthernHemisphere).
A single value is applied to all barbs. Individual barbs can be flipped bypassing a bool array of the same size asU andV.
- Returns:
- barbs
Barbs
- barbs
- Other Parameters:
- dataindexable object, optional
If given, all parameters also accept a string
s, which isinterpreted asdata[s]ifsis a key indata.- **kwargs
The barbs can further be customized using
PolyCollectionkeywordarguments:Property
Description
a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array and two offsets from the bottom left corner of the image
array-like or float or None
bool
bool or list of bools
array-like or None
CapStyleor {'butt', 'projecting', 'round'}(vmin: float, vmax: float)
BboxBaseor Nonebool
Patch or (Path, Transform) or None
Colormapor str or Nonecolor or list of RGBA tuples
edgecolororecoredgecolorsfacecolororfacecolorsorfcstr
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
unknown
bool
JoinStyleor {'miter', 'round', 'bevel'}object
linestyleordashesorlinestylesorlsstr or tuple or list thereof
linewidthorlinewidthsorlwfloat or list of floats
bool
Normalizeor str or None(N, 2) or (2,) array-like
list of
AbstractPathEffectlist of array-like
None or bool or float or callable
float
bool
sizesnumpy.ndarrayor None(scale: float, length: float, randomness: float)
bool or None
str
list of str or None
list of array-like
unknown
bool
float
Notes
Note
This is thepyplot wrapper for
axes.Axes.barbs.