other versions

- buster 5.14.0+dfsg-3
- testing 5.15.0+dfsg-19
- unstable 5.15.0+dfsg-19
- experimental 5.15.0+dfsg-20

PLCONT(3plplot) | PLplot API | PLCONT(3plplot) |

# NAME¶

**plcont**- Contour plot

# SYNOPSIS¶

**plcont**(

*f*,

*nx*,

*ny*,

*kx*,

*lx*,

*ky*,

*ly*,

*clevel*,

*nlevel*,

*pltr*,

*pltr_data*)

# DESCRIPTION¶

Draws a contour plot of the data in*f*[

*nx*][

*ny*], using the

*nlevel*contour levels specified by

*clevel*. Only the region of the matrix from

*kx*to

*lx*and from

*ky*to

*ly*is plotted out where all these index ranges are interpreted as one-based for historical reasons. A transformation routine pointed to by

*pltr*with a generic pointer

*pltr_data*for additional data required by the transformation routine is used to map indices within the matrix to the world coordinates.

Redacted form: **plcont(f, kx, lx, ky, ly, clevel, pltr,
pltr_data)** where (see above discussion) the pltr, pltr_data callback
arguments are sometimes replaced by a tr vector with 6 elements; xg and yg
vectors; or xg and yg matrices.

This function is used in examples 9, 14, 16, and 22.

# ARGUMENTS¶

*f*(**PLFLT_MATRIX**(3plplot), input)- A matrix containing data to be contoured.
*nx, ny*(**PLINT**(3plplot), input)- The dimensions of the matrix
*f*. *kx, lx*(**PLINT**(3plplot), input)- Range of x indices to consider where 0 <= kx-1 < lx-1 < nx. Values of kx and lx are one-based rather than zero-based for historical backwards-compatibility reasons.
*ky, ly*(**PLINT**(3plplot), input)- Range of y indices to consider where 0 <= ky-1 < ly-1 < ny. Values of ky and ly are one-based rather than zero-based for historical backwards-compatibility reasons.
*clevel*(**PLFLT_VECTOR**(3plplot), input)- A vector specifying the levels at which to draw contours.
*nlevel*(**PLINT**(3plplot), input)- Number of contour levels to draw.
*pltr*(**PLTRANSFORM_callback**(3plplot), input)- A callback function that defines the transformation between the zero-based
indices of the matrix
*f*and the 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.June, 2021 |