If your data is not recorded in real-time, you can sort it (along the x-axis) and this does not imply that the "y(x) function" will become monotonous. See below. As suggested, by Stephane Mottelet, see one 3-point median filter solution below applied to data similar to yours: M = [1.0 -0.2; 1.4 0.0; 2.1 0.2; 1.7 0.45; 2.45 0.5; 2.95 0.6; 2.5 0.75; 3.0 0.8; 3.3 1.2]; x0 = M(:,1); y0 = M(:,2); clf(); plot2d(x0,[y0 y0],style=[5 -9]); [x,ix] = gsort(x0,'g','i'); // sorting input x-axis y = y0(ix); k =1; // median filter half-lenght n = length(x); x(2:n+1)=x; y(2:n+1)=y; x(1)=x(2); y(1)=y(2); x(n+2)=x(n+1); y(n+2)=y(n+1); n = length(x); for j = 1:n j1 = max(1,j-k); j2 = min(n,j+k); ym(j) = median(y(j1:j2)); end plot2d(x,ym+5e-3,style=[3],leg="3-point median filtering@"); // shift for display purposes This gets rid of obvious outliers but does not guarantee a monotonous output (idem for the more robust LOWESS technique, that can be googled). Rafael -----Original Message----- From: users [mailto:users-boun...@lists.scilab.org] On Behalf Of scilab.20.browse...@xoxy.net <mailto:scilab.20.browse...@xoxy.net> Sent: Monday, April 04, 2016 1:05 PM To: users@lists.scilab.org <mailto:users@lists.scilab.org> Subject: Re: [Scilab-users] "Smoothing" very localised discontinuities in (scilab: to exclusive) curves. Yes. C:\Motor>graphRdat T HB1M_Core25_No_Field_No_Epoxy_800Am.rdat s = splin( h', b', 'monotone' ); !--error 999 splin: Wrong value for input argument #1: Not (strictly) increasing or +-inf detected. at line 22 of exec file called by : Since there are no inf values in the data; that kind of implies that it requires
monotonic input in order to produce monotonic output; which ain't so useful. That said, I get that same error message whichever variation of the splin() function I try.... Which suggests there's something wrong with my data, but that stupid cos the data is real. The math has to adapt to the data not the other way around.
_______________________________________________ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users