PLVECT(3plplot) | PLplot API | PLVECT(3plplot) |

# NAME¶

**plvect** - Vector plot

# SYNOPSIS¶

**plvect**(*u*, *v*, *nx*, *ny*,
*scale*, *pltr*, *pltr_data*)

# DESCRIPTION¶

Draws a plot of vector data contained in the matrices
(*u*[*nx*][*ny*],*v*[*nx*][*ny*]) . The
scaling factor for the vectors is given by *scale*. A transformation
routine pointed to by *pltr* with a pointer *pltr_data* for
additional data required by the transformation routine to map indices within
the matrices to the world coordinates. The style of the vector arrow may be
set using **plsvect**(3plplot).

Redacted form: **plvect(u, v, scale, pltr, pltr_data)** where
(see above discussion) the pltr, pltr_data callback arguments are sometimes
replaced by a tr vector with 6 elements, or xg and yg array arguments with
either one or two dimensions.

This function is used in example 22.

# ARGUMENTS¶

*u, v*(**PLFLT_MATRIX**(3plplot), input)- A pair of matrices containing the x and y components of the vector data to be plotted.
*nx, ny*(**PLINT**(3plplot), input)- Dimensions of the matrices
*u*and*v*. *scale*(**PLFLT**(3plplot), input)- Parameter to control the scaling factor of the vectors for plotting. If
*scale*= 0 then the scaling factor is automatically calculated for the data. If*scale*< 0 then the scaling factor is automatically calculated for the data and then multiplied by -*scale*. If*scale*> 0 then the scaling factor is set to*scale*. *pltr*(**PLTRANSFORM_callback**(3plplot), input)- A callback function that defines the transformation between the zero-based
indices of the matrices
*u*and*v*and world coordinates.For the C case, transformation functions are provided in the PLplot library:**pltr0**(3plplot) for the identity mapping, and**pltr1**(3plplot) and**pltr2**(3plplot) for arbitrary mappings respectively defined by vectors and matrices. In addition, C callback routines for the transformation can be supplied by the user such as the mypltr function in examples/c/x09c.c which provides a general linear transformation between index coordinates and world coordinates.For languages other than C you should consult the PLplot documentation for the details concerning how**PLTRANSFORM_callback**(3plplot) arguments are interfaced. However, in general, a particular pattern of callback-associated arguments such as a tr vector with 6 elements; xg and yg vectors; or xg and yg matrices are respectively interfaced to a linear-transformation routine similar to the above mypltr function;**pltr1**(3plplot); and**pltr2**(3plplot). Furthermore, some of our more sophisticated bindings (see, e.g., the PLplot documentation) support native language callbacks for handling index to world-coordinate transformations. Examples of these various approaches are given in examples/<language>x09*, examples/<language>x16*, examples/<language>x20*, examples/<language>x21*, and examples/<language>x22*, for all our supported languages. *pltr_data*(**PLPointer**(3plplot), input)- Extra parameter to help pass information to
**pltr0**(3plplot),**pltr1**(3plplot),**pltr2**(3plplot), or whatever callback routine that is externally supplied.

# AUTHORS¶

Many developers (who are credited at http://plplot.org/credits.php) have contributed to PLplot over its long history.

# SEE ALSO¶

PLplot documentation at http://plplot.org/documentation.php.

August, 2021 |