Chapters: 1: Introduction 2: Simple example 3: Invocation 4: Finer Control 5: X-Y Plots 6: Contour Plots 7: Image Plots 8: Examples 9: Gri Commands 10: Programming 11: Environment 12: Emacs Mode 13: History 14: Installation 15: Gri Bugs 16: Test Suite 17: Gri in Press 18: Acknowledgments 19: License Indices: Concepts Commands Variables |
9.3.45: `
All these smoothing commands ignore the location of the data. For
equispaced data these algorithms have the standard interpretation in
terms of digital filters. For non-equispaced data, the interpretation
is up to the user.
|
`smooth {x [.n.]} \ | {y [.n.]} \ | {grid data [.f.|{along x|y}]}' |
The `smooth x
' command does smoothing by the following formula
x[i-1] x[i] x[i+1] ------ + ---- + ------ 4 2 4 |
The `smooth x .n.
' command does boxcar smoothing with centred
boxcars `.n.
' points wide. The `smooth y
' command does the
same as `smooth x
', but on the `y
' column.
There are several methods of smoothing grid data. Note that isolated missing values are filled in by each method. (Let the author know if you'd like that `feature' to be an option.)
The `smooth grid data
' command smooths gridded data, by weighted
average in a plus-shaped window about each gridpoint. The smoothing
algorithm replaces each interior gridpoint value `z[i][j]
' by
z[i][j] z[i-1][j] + z[i+1][j] + z[i][j-1] + z[i][j+1] ------- + --------------------------------------------- 2 8 |
Points along the edges are smoothed by the same formula, after inventing image points outside the domain by planar extrapolation.
The `smooth grid data .f.
' command performs partial smoothing. A
temporary fully-smoothed grid `zSMOOTH[i][h]
' is constructed as
above, and a linear combination of this grid and the original grid is
used as the replacement grid:
z[i][j] = (1-f) * z[i][j] + f * zSMOOTH[i][j] |
where `f
' is the value indicated on the command line.
Thus, `smooth grid data 0
' performs no smoothing at all, while
`smooth grid data 1
' is equivalent to `smooth grid data
'.
The `smooth grid data along x
' command smooths the grid data
across `x
' (i.e., horizontally), by replacing each value
`z[i][j]
' with the value
z[i][j] z[i-1][j] + z[i+1][j] ------- + --------------------- 2 4 |
Points along the edges are smoothed by the same formula, after inventing image points outside the domain by linear extrapolation.
The `smooth grid data along y
' command does the same thing as
`smooth grid data along x
', but the smoothing is along `y
'.
See also see Filter, a generalization of `smooth x|y
'
which allows for more sophisticated filters.