|· Newcomer to Topological Data Analysis? Checkout our new TTK Example Website!||[Jan. 2, 2022]|
|· We had an awesome tutorial at IEEE VIS 2021. Videos are now available here!||[Nov. 12, 2021]|
|· After 7 years of development, TTK is now officially integrated in ParaView!||[Oct. 16, 2021]|
|· To celebrate this milestone, we have released TTK version 1.0!||[Oct. 16, 2021]|
|· Join us online at IEEE VIS 2021 (October 24) for a half-day TTK tutorial!||[Oct. 8, 2021]|
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) and merge trees, 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 data analysis and visualization application
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