I post this just for general information, I compare 2 ways to plot a average curve : - The first by convolution with a cardinal sinus, which constitutes a low pass filter (exactly a brick-wall filter). - the second is a moving average (which is a convolution with a rectangle).
The first way requires a little more calculation but is still very fast (less than a second for 20,000 points with a Windows PC, .NET framwork, CPU: i5 6th generation) it gives a smoother curve and no less significant The second is more speed but leave artifacts which are due to edge effects with the convolution window edge.
Filtered by a low-pass filter (LPF) with troncated sinus-cardinal window convolution: Image Insert: 216998 bytes
Filtered by a rectangular window convolution (mobile average) Image Insert: 226113 bytes
Exemple of sinus cardinal convolution implementation under Visual Basic .NET Image Insert: 198974 bytes Note: above, function sin (x) must be defined in radians
and his calling: Image Insert: 34681 bytes
Mastery is acquired by studying, with it everything becomes simple