A hierarchical clustering tool
- Comparison with other applications
MultiDendrograms is a simple yet powerful program to make the Hierarchical Clustering of real data, distributed under an Open Source license. Starting from a distances (or weights) matrix, MultiDendrograms calculates its dendrogram using the most common Agglomerative Hierarchical Clustering algorithms, allows the tuning of many of the graphical representation parameters, and the results may be easily exported to file. A summary of characteristics:
- Multiplatform: developed in Java, runs in all operating systems (e.g. Windows, Linux and MacOS).
- Graphical user interface: data selection, hierarchical clustering options, dendrogram representation parameters, navigation across the dendrogram, deviation measures.
- Hierarchical Clustering algorithms implemented: variable-group Single Linkage, Complete Linkage, Unweighted average, Weighted average, Unweighted centroid, Weighted centroid and Ward.
- Representation parameters: size, orientation, labels, axis, etc.
- Deviation measures: Cophenetic Correlation Coefficient, Normalized Mean Squared Error and Normalized Mean Absolute Error.
- Export: ultrametric matrix, dendrogram details in text and Newick tree formats.
- Plot: dendrogram image in JPG, PNG and EPS formats.
- Command-line: available direct calculation of hierarchical clustering from the command-line, without the need to use the graphical interface.
MultiDendrograms implements the variable-group algorithms in  to solve the non-uniqueness problem found in the standard pair-group algorithms and implementations. This problem arises when two or more minimum distances between different clusters are equal during the amalgamation process. The standard approach consists in choosing a pair, breaking the ties between distances, and proceeds in the same way until the final hierarchical classification is obtained. However, different clusterings are possible depending on the criterion used to break the ties (usually a pair is just chosen at random!), and the user is unaware of this problem.
The variable-group algorithms group more than two clusters at the same time when ties occur, given rise to a graphical representation called multidendrogram. Their main properties are:
- When there are no ties, the variable-group algorithms give the same results as the pair-group ones.
- They always give a uniquely determined solution.
- In the multidendrogram representation for the results one can explicitly observe the occurrence of ties during the agglomerative process. Furthermore, the height of any fusion interval (the bands in the program) indicates the degree of heterogeneity inside the corresponding cluster.
How do other applications deal with ties?
Ignore ties, uncommented in their respective manuals:
- Mathematica: Agglomerate and DirectAgglomerate functions in Hierarchical Clustering Package
- MATLAB: linkage function in the Statistics Toolbox
- R: hclust function in the stats package, and agnes function in the the cluster package
- Stata: cluster and clustermat commands
Report the existence of ties, and break them using the order of the observations in the input file:
- SAS: CLUSTER procedure
Break ties using the order of cases in the input file, and recommend the comparison with cases sorted in different random orders:
- PASW Statistics, formerly SPSS Statistics: Hierarchical Clustering Analysis procedure
How do I know if there are ties in my data?
- Most people would say I do not have problems with tied distances, however you cannot be sure unless the used software explicitly tells you so.
- In MultiDendrograms tied distances can be easily noticed in the dendrogram plots, in the dendrogram navigation window, and in the exported tree and Newick files.
Solving Non-uniqueness in Agglomerative Hierarchical Clustering Using Multidendrograms
Alberto Fernández and Sergio Gómez
Journal of Classification 25 (2008) 43-65.
(pdf) (doi) (Springer)
Please cite  if you use MultiDendrograms in your publications:
- Program (manual included): multidendrograms-3.2.1.zip
- Manual: multidendrograms-3.2-manual.pdf
- Source code: multidendrograms-3.2.1-src.zip
No installation needed, just unzip multidendrograms-xxx.zip and run multidendrograms.bat (Windows), multidendrograms.sh (Linux) or multidendrograms.jar (all OS). Java version 6 (also known as Java 1.6) or higher is required.
You may contribute to the development of MultiDendrograms in GitHub:
- GitHub repository: sergio-gomez / MultiDendrograms
- New format for dendrogram navigation and save as text file
- Data in triangular form
- Scrollbars in dendrograms panel
- Command-line direct calculation of multidendrogram
- Ward hierarchical clustering
- Check if new version is available
- Confirmation before closing
- Improved performance
- Major source code refactoring
- Export dendrograms to Newick format
- Show calculation progress
- Improved GUI
- Improved performance
- Completely new multiplatform (Windows, Linux, MacOS, etc.) application
- Added Graphical User Interface (GUI)
- Control of the dendrogram appearance
- Navigation through the dendrogram details
- Accepts distance and similarity matrices
- Export dendrograms to JPG, PNG and EPS
- Calculation of ultrametric deviation measures
- Windows command-line application to compute multidendrograms
- Windows command-line application to compute ultrametric matrices
- Windows command-line application to generate EPS plots