for i := 2 to N - 2 do begin if Series1.YValue[i]<= y1 then begin x1:=Series1.XValue[i]; y1:=Series1.YValue[i]; end else begin if Series1.YValue[i]>= Series1.YValue[i+1] then begin x2:=Series1.XValue[i]; y2:=Series1.YValue[i]; if ((y2-y1)/(x2-x1)) >Threshold then begin //Threshold := 2; if (y2-y1) > ((MaxValue-MinValue)*0.1) then begin // 0.1 为阀值 Series2.AddXY(Series1.XValue[i],Series1.YValue[i]); // Series2: TPointSeries; x1:=Series1.XValue[i]; y1:=Series1.YValue[i]; end; end; end;
end; end; end;
【1】Jianqiu Zhang, Elias Gonzalez, Travis Hestilow, William Haskins and Yufei Huang, Review of Peak Detection Algorithms in Liquid-Chromatography-Mass Spectrometry, Current Genomics, 2009, 10, 388-401.