plshade.3plplot man page

plshade — Shade individual region on the basis of value

Synopsis

plshade(a, nx, ny, defined, xmin, xmax, ymin, ymax, shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color, min_width, max_color, max_width, fill, rectangular, pltr, pltr_data)

Description

Shade individual region on the basis of value.  Use plshades(3plplot) if you want to shade a number of contiguous regions using continuous colors.  In particular the edge contours are treated properly in plshades(3plplot).  If you attempt to do contiguous regions with plshade(3plplot) the contours at the edge of the shade are partially obliterated by subsequent plots of contiguous shaded regions.

Redacted form: General: plshade(a, defined, xmin, xmax, ymin, ymax, shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color, min_width, max_color, max_width, fill, rectangular, pltr, pltr_data)

This function is used in example 15.

Arguments

a (PLFLT_MATRIX(3plplot), input)

A matrix containing function values to plot.  Should have dimensions of nx by ny.

nx (PLINT(3plplot), input)

First dimension of the matrix "a".

ny (PLINT(3plplot), input)

Second dimension of the matrix "a".

defined (PLDEFINED_callback, input)

Callback function specifying the region that should be plotted in the shade plot.  This function accepts x and y coordinates as input arguments and must return 1 if the point is to be included in the shade plot and 0 otherwise.  If you want to plot the entire shade plot (the usual case), this argument should be set to NULL.

xmin, xmax, ymin, ymax (PLFLT(3plplot), input)

See the discussion of pltr below for how these arguments are used (only for the special case when the callback function pltr is not supplied).

shade_min (PLFLT(3plplot), input)

Defines the lower end of the interval to be shaded. If shade_max <= shade_min, plshade(3plplot) does nothing.

shade_max (PLFLT(3plplot), input)

Defines the upper end of the interval to be shaded. If shade_max <= shade_min, plshade(3plplot) does nothing.

sh_cmap (PLINT(3plplot), input)

Defines color map. If sh_cmap=0, then sh_color is interpreted as a cmap0 (integer) index.  If sh_cmap=1, then sh_color is interpreted as a cmap1 argument in the range (0.0-1.0).

sh_color (PLFLT(3plplot), input)

Defines color map index with integer value if cmap0 or value in range (0.0-1.0) if cmap1.

sh_width (PLFLT(3plplot), input)

Defines width used by the fill pattern.

min_color (PLINT(3plplot), input)

Defines pen color, width used by the boundary of shaded region. The min values are used for the shade_min boundary, and the max values are used on the shade_max boundary.  Set color and width to zero for no plotted boundaries.

min_width (PLFLT(3plplot), input)

Defines pen color, width used by the boundary of shaded region. The min values are used for the shade_min boundary, and the max values are used on the shade_max boundary.  Set color and width to zero for no plotted boundaries.

max_color (PLINT(3plplot), input)

Defines pen color, width used by the boundary of shaded region. The min values are used for the shade_min boundary, and the max values are used on the shade_max boundary.  Set color and width to zero for no plotted boundaries.

max_width (PLFLT(3plplot), input)

Defines pen color, width used by the boundary of shaded region. The min values are used for the shade_min boundary, and the max values are used on the shade_max boundary.  Set color and width to zero for no plotted boundaries.

fill (PLFILL_callback, input)

Routine used to fill the region.  Use plfill(3plplot).  Future version of PLplot may have other fill routines.

rectangular (PLBOOL(3plplot), input)

Set rectangular to true if rectangles map to rectangles after coordinate transformation with pltrl.  Otherwise, set rectangular to false. If rectangular is set to true, plshade tries to save time by filling large rectangles.  This optimization fails if the coordinate transformation distorts the shape of rectangles. For example a plot in polar coordinates has to have rectangular set to false.

pltr (PLTRANSFORM_callback, input)

A callback function that defines the transformation between the zero-based indices of the matrix a and world coordinates. If pltr is not supplied (e.g., is set to NULL in the C case), then the x indices of a are mapped to the range xmin through xmax and the y indices of a are mapped to the range ymin through ymax.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 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 (PL_GENERIC_POINTER(3plplot), input)

Extra parameter to help pass information to pltr0(3plplot), pltr1(3plplot), pltr2(3plplot), or whatever routine that is externally supplied.

Authors

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

See Also

PLplot documentation at http://plplot.sourceforge.net/documentation.php.

Info

January, 2017 PLplot API