|· TTK 0.9.9 is out! Download it and check it out :)||[Dec. 21, 2020]|
|· We had an awesome tutorial at IEEE VIS 2020. Videos are now available here!||[Oct. 27, 2020]|
|· Join us online at IEEE VIS 2020 (October 26) for a half-day TTK tutorial!||[Oct. 7, 2020]|
|· Check out our introduction to TTK on the Applied Algebraic Topology Network !||[May 21, 2020]|
The Topology ToolKit (TTK) is an open-source library and software collection for topological data analysis and visualization.
TTK can handle scalar data defined either on regular grids or
triangulations, in 2D, 3D, or more. It provides a substantial collection of
generic, efficient and robust implementations of key algorithms in
topological data analysis. It includes:
· For scalar data: critical points, integral lines, persistence diagrams, persistence curves, merge trees, contour trees, Reeb graphs, Morse-Smale complexes, topological simplification, topology-aware compression, harmonic design;
· For bivariate scalar data: fibers, fiber surfaces, continuous scatterplots, Jacobi sets, Reeb spaces;
· For uncertain scalar data: mandatory critical points;
· For ensemble scalar data: Bottleneck and Wasserstein distances between persistence diagrams (exact Munkres-based computation or fast Auction-based approximation), Wasserstein barycenters and clusters of persistence diagrams (fast progressive algorithms), distance matrices (Lp norm, Wasserstein distances), contour tree alignment;
· For time-varying scalar data: critical point tracking, nested tracking graphs;
· For high-dimensional / point cloud data: dimension reduction, persistence-based clustering;
· and more!
If you need to robustly analyze your data, you may want to use TTK.
> Check out our gallery page for some TTK eye candy!
TTK makes topological data analysis accessible to end users
thanks to easy-to-use plugins for the visualization front end
ParaView. Thanks to ParaView, TTK supports a variety of input data
> Check out our video tutorials to see TTK in action!
TTK is written in C++ but comes with a variety of bindings
(VTK/C++, Python) and standalone command-line programs. It is modular and easy
We have specifically developed it such that you can easily write your own data
analysis tools as TTK modules.
> Check out our developer documentation
TTK is open-source (BSD license). You can use it at your
convenience, for open-source or proprietary projects. You are also welcome to
> Check out our contribution page