#### 3.25.53.5 color_assignment

‘3 columns of data (x,y,z)‘:

The coloring setup as well as the color box drawing are determined by palette. There can be only one palette for the current plot. Drawing of several surfaces with different palettes can be achieved by multiplot with fixed origin and size; don’t forget to use ‘set palette maxcolors‘ when your terminal is running out of available colors.

There is a single gray/color value associated to each drawn pm3d quadrangle (no smooth color change among vertices). The value is calculated from z-coordinates from the surrounding corners according to ‘corners2color <option>‘. The options ’mean’ (default), ’geomean’ and ’median’ produce various kinds of surface color smoothing, while options ’min’ and ’max’ choose minimal or maximal value, respectively. This may not be desired for pixel images or for maps with sharp and intense peaks, in which case the options ’c1’, ’c2’, ’c3’ or ’c4’ can be used instead to assign the quadrangle color based on the z-coordinate of only one corner. Some experimentation may be needed to determine which corner corresponds to ’c1’, as the orientation depends on the drawing direction. Because the pm3d algorithm does not extend the colored surface outside the range of the input data points, the ’c<j>’ coloring options will result in pixels along two edges of the grid not contributing to the color of any quadrangle. For example, applying the pm3d algorithm to the 4x4 grid of data points in script ‘demo/pm3d.dem‘ (please have a look) produces only (4-1)x(4-1)=9 colored rectangles.

‘4 columns of data (x,y,z,color)‘:

If a fourth column of data is provided, it is normally interpreted as a separate palette-mapped gray value. The coloring of individual quadrangles works as above, except that the color value is distinct from the z value. As a separate coloring option, the fourth data column may provide instead an RGB color. See ‘rgbcolor variable‘. In this case the plotting command must be

          splot ... using 1:2:3:4 with pm3d lc rgb variable

Another drawing algorithm, which would draw quadrangles around a given node by taking corners from averaged (x,y)-coordinates of its surrounding 4 nodes while using node’s color, could be implemented in the future. This is already done for drawing images (2D grids) via ‘image‘ and rgbimage styles.

Notice that ranges of z-values and color-values for surfaces are adjustable independently by zrange, cbrange, as well as ‘set log‘ for z or cb. Maps can be adjusted by the cb-axis only; see also ‘set view map‘ and ‘set colorbox‘.