modelica-tools / csv-compare

Tool to compare curves from one csv files with curves from other csv files using an adjustable tolerance
https://www.modelica.org
BSD 3-Clause "New" or "Revised" License
25 stars 15 forks source link

Few error points causes strange error bar #11

Closed ghost closed 9 years ago

ghost commented 9 years ago

First of, the new version of CSV compare is much better!

The behaviour for the error graph has changed since previous versions of csv-compare (pre 2.0?). Now it only plot the graph for the part that has an error. I don't know if this is intended or not but it causes problems when there's only a one or two error points: fig1 fig2

All files that was used can be found here, and the command was:

Compare.exe -o -m csvFileCompare -r . -t 0.001 --inlineactual.csv target.csv 2015-03-20Z07:53:27 [ Warning ] aimc.idq_rr[2] is invalid! 1 errors have been found during validation. 2015-03-20Z07:53:27 [ Warning ] aimc.idq_rr[1] is invalid! 2 errors have been found during validation. 2015-03-20Z07:53:27 [ Warning ] aimc.idq_sr[1] is invalid! 1 errors have been found during validation.

Version:

Compare.exe --help CSV File Comparison Tool 2.0.0.1 Copyright © 2015 - ITI GmbH

It would be really nice if the two graphs was synced, so if you zoomed in one, the other one was zoomed as well, in x-axis that is.

ghost commented 9 years ago

There also seems to be problems with the error bar if there are multiple errors in the same trajectory but there are correct points between the erroneous ones. The error graph does not return to zero for the correct points.

The problem seems to be that the the javascript vector data_err is only populated with the failing points.

var data_err = [[[0.13429982603224,1.97700897048878],[0.13429982603224,1.97700897048878],[0.134347309398613,1.46551025424518],[0.134347309398613,1.46551025424518],[0.758947936283575,0.407209079166],[0.758947936283575,0.407209079166],[0.758948050028233,0.40808983935079],[0.758948050028233,0.40808983935079],[0.846758735652558,0.667968759364092],[0.846758735652558,0.667968759364092],[0.846758874695406,0.673981025204942],[0.846758874695406,0.673981025204942]]];

svenruetz commented 9 years ago

The behaviour is not intended, but the new tube algorithm returns only the errors at the invalid points. I am going to fill the list with zeros in the valid parts

ghost commented 9 years ago

Ok, sounds great :)

ghost commented 9 years ago

Thanks