ChartDirector 7.1 (C++ Edition)

ArrayMath.lowess2


Usage

ArrayMath& lowess(DoubleArray b, double smoothness = 0.25, int iteration = 0);

Description

Fits a curve through the data points in the ArrayMath object using the LOWESS algorithm, where the spacing of the data points is supplied by the given array.

Please refer to ArrayMath.lowess for a brief description of the LOWESS algorithm.

In this method, each element of the ArrayMath object will be replaced by the corresponding value computed using the LOWESS algorithm.

Arguments

ArgumentDefaultDescription
b(Mandatory)An array of numbers providing the x coordinates of the data points in the ArrayMath object.
smoothness0.25The smoothness factor. It must be between 0 - 1. It is the portion of points used in finding the n nearest points. In other words, n = smoothness * no_of_points. A larger value will result in a smoother the curve. A smaller value will result in the curve tracking the data points better.

For LOWESS to have any smoothing effect at all, n must be at least 3. You may need to use a large smoothness factor if you only have a few data points.
iteration0The number of additional iteration used in the LOWESS algorithm. Unless your data is extremely noisy, in most case no additional iteration is necessary.

Return Value

The current ArrayMath object.