rivetTDA / rivet

RIVET is a tool for Topological Data Analysis, in particular two-parameter persistent homology.
GNU General Public License v3.0
73 stars 24 forks source link

messy visualization or crash for degenerate input #89

Open mlesnick opened 7 years ago

mlesnick commented 7 years ago

Corner cases with at most a single x-grade or y-grade are not handled properly in the visualizer. This is true in particular for the empty bifiltration. [EDIT: Some of this has been addressed, see the comment below.]

For example, see the following (note that the axis label sits on top of the bounds for the axis):

screen shot 2017-05-25 at 11 41 47 am

I suppose this is just a matter of changing the width of the displayed regions in the corner cases.

Also, in the case of the empty bifiltration, resizing the window immediately crashes the visualizer (OS X Sierra).

mlesnick commented 7 years ago

The visualization also has problems with very nearly degenerate data. In the attached example,

I put a gaussian kernel density estimator on a circle with 15 equally spaced points. The codensity values are identical, up to a VERY SMALL but nonzero numerical error.

For H0 and 30x30 bins, the visualizer gives this:

screen shot 2017-06-22 at 9 05 19 pm

CameronTest5.txt

mlesnick commented 6 years ago

Simon did some changes, now in a pull request, that addresses most of this. The corner case of empty input is still not addressed. And the degenerate case of "camerontest5" is still not handled correctly; now the slice line never shows.