`plshade1`: Shade individual region on the basis of value
Prev | Chapter 21. Obsolete/Deprecated API for PLplot | Next

#### `plshade1`: Shade individual region on the basis of value

`plshade1 (` | 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 `)`;

Shade individual region on the basis of value. Use `plshades` if you want to shade a number of contiguous regions using continuous colors. In particular the edge contours are treated properly in `plshades`. If you attempt to do contiguous regions with `plshade1` (or `plshade`) the contours at the edge of the shade are partially obliterated by subsequent plots of contiguous shaded regions. `plshade1` differs from `plshade` only by the type of the first argument. Look at the argument list below and `plcont` for more information about the transformation from matrix index to world coordinates. Shading NEEDS DOCUMENTATION, but as a stopgap look at how `plshade1` (or `plshade`) are used in `examples/c/x15c.c`

`a` (``PLFLT_FE_POINTER``, input)

  Contains pointer to first element of array to be plotted. The array must have been declared as PLFLT a[nx][ny].

`nx` (``PLINT``, input)

  First dimension of array "a".

`ny` (``PLINT``, input)

  Second dimension of array "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``, 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``, input)

  Defines the lower end of the interval to be shaded. If shade_max ≤ shade_min, `plshade1` does nothing.

`shade_max` (``PLFLT``, input)

  Defines the upper end of the interval to be shaded. If shade_max ≤ shade_min, `plshade1` does nothing.

`sh_cmap` (``PLINT``, 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 range (0.0-1.0).

`sh_color` (``PLFLT``, input)

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

`sh_width` (``PLFLT``, input)

  Defines width used by the fill pattern.

`min_color` (``PLINT``, 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``, 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``, 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``, 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`. Future version of PLplot may have other fill routines.

`rectangular` (``PLBOOL``, 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, plshade1 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` for the identity mapping, and `pltr1` and `pltr2` 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 Part III, “ Supported computer languages ” 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`; and `pltr2`. Furthermore, some of our more sophisticated bindings (see, e.g., Chapter 10, Fortran Language) 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``, input)

  Extra parameter to help pass information to `pltr0`, `pltr1`, `pltr2`, or whatever routine that is externally supplied.

`plshade1` is currently not used in any of our examples. Use `plshade` instead.

Prev | Up | Next
Chapter 21. Obsolete/Deprecated API for PLplot | Home | Chapter 22. Internal C functions in PLplot