TeeChart 内置平滑函数的使用 - smoothing function
2007年09月26日 星期三 10:33
procedure TForm1.SmoothingClick(Sender: TObject);
var
Tfunctiona: TSmoothingFunction;
i: Integer;
begin
Tfunctiona:=TSmoothingFunction.create(self);
Series22.SetFunction(Tfunctiona);

Tfunctiona.Interpolate:=false;
Tfunctiona.Factor:=4;

for i:= 0 to 20 do
begin

series22.datasources.clear;

series22.datasources.add(chart.series[i]);

Series22.CheckDataSource;
chart.series[i].assignvalues(Series22);
chart.Series[i].CheckDataSource;

end;
Series22.clear;
Series22.visible:= false;
TFunctiona.free;

end;
已经研究出来了。上边的方法如果单 独写成function会 多次平滑,占用大量CPU时间。
TeeChart自带设置,会将smoothing封装
方法如下:
1,建一个line为series1
2,点击series1,然后点击:add,增加一个function->other->smoothing 为series2
3,进入该series2的设置,在datasource->function->smoothing里 设置:source series为series1
4,点击apply 即完成
5,显示的时候,你可以选择把serise1隐藏,因为它是原始line,只显示serise2,这条是平滑过的。
6,其中的参数:Interpolate 是指曲线是否根据原点进行变形,一般应选择,即true,但是 true的时候,占cpu资源多些。