DENSITY:dithering
If v is a vector, x and y are assumed to represent a scattered set
of points, where v is the altitude corresponding to the location
(x,y). A regular grid, or matrix, is interpolated on these
scattered points by means of a Thiessen triangulation of the plane.
If v is a matrix, x and y default to 1,2,3,.... If two vectors, x
and y, are entered with the matrix v, the length of x must be greater
than or equal to the number of columns of v and the length of y must
be greater than or equal to the number of rows of v.
The optional scalars p1 and p2 can be used to broaden or shrink the
range of data values, from the full data range, min to max. If v is
a data value and if v < p1*(max-min)+min, that data value is treated
as min. If v > p2*(max-min)+min, that data value is treated as max.
The default values are: p1 = 0 and p2 = 1.
A user defined dithering pattern can be entered by using \DITHER and
entering the dithering pattern vector, d, as the first parameter.
The default dithering vector is:
d = [ 1;1; 2;1; 2;2; 3;2; 3;3; 4;3; 4;4; 5;5; 6;6; 0;0 ]
The dithering pattern is determined by pairs of numbers from d, so
the number of dithering patterns defined by d is 1\2 the length of d.
For pattern number I, every d[2*I-1]_th pixel is lit up horizontally,
and every d[2*I]_th pixel is lit up vertically. If
d[1] = 1 and d[2] = 1, then for level 1 every pixel is lit up, while if
d[3] = 2 and d[4] = 3, then for level 2 every second pixel is lit up
horizontally and every third pixel vertically.
A specific set of contour levels can be entered by using \LEVELS and
entering a vector of contour level values, lvl, as the first parameter,
unless the \DITHER qualifier is also used, in which case the contour
level vector should be the second parameter. If both are used, and the
length of the dithering vector is N, the length of the level vector must
be N/2-1. Suppose that MIN and MAX are the minimum and maximum of v. The
level vector must be strictly monotonically increasing, with lvl[1] > MIN
and lvl[#] < MAX. If the levels are not equally spaced, and a legend is
requested, the legend box sizes will be proportional to the level values.
To have boxes all the same size, irregardless of the level values, use
the \EQUALLY_SPACED qualifier.
If the \LEGEND qualifier is used, a legend is drawn along the right
side of the axes. The legend requires the right end of the x-axis to
be set to 75% of the window, that is, %XUAXIS is set to 75. When a
profile is drawn, the axis borders must also be set to allow space
for the profiles, that is, %XUAXIS is set to 65% if a legend is
present, or 85% if there is no legend. By default, %XUAXIS is reset
to its former value. If the \NORESET qualifier is used, the axis
location is not reset. The numeric legend entries are written using
the LEGFRMT format and with height given by LEGSIZ, both of which are
changed with the SET command. If the user specifies the levels, and
they are not equally spaced, the legend box sizes will be proportional
to the level values. To have boxes all the same size, irregardless of
the level values, use the \EQUALLY_SPACED qualifier.
If the \LOG qualifier is used, the range of values of the base 10
logarithm of the matrix is divided into equal levels, such that the
boundaries are integral powers of 10. If \LEGEND is also used,
the legend entries are written as powers of 10.
If the qualifier \CONTOURS is used, a vector named DENS$CONT will
be made which will contain the values of the region boundaries, or
contours. If there are N regions, the length of DENS$CONT will be N+1.
If the qualifier \AREAS is used, a vector named DENS$AREA will
be made which will contain the percentage areas of each region.
If there are N regions, the length of DENS$AREA will be N.
sum(DENS$AREA[j],j,1:N) = 100
If the qualifier \AREAS is used, a vector named DENS$VOLM will
be made which will contain the percentage volume of each region.
If there are N regions, the length of DENS$AREA will be N.
sum(DENS$VOLM[j],j,1:N) = 100
If the qualifier \NOLINES is used, then the regional boundaries, or
contour lines, will not be drawn.