Menu

Hierarchical Clustering

Publication-Ready Dendrograms

Dendrograms visualize hierarchical relationships between samples or features. From phylogenetic trees to gene clustering, Plotivy creates them with proper linkage methods, color-coded clusters, and cut-height annotations.

Choosing the Right Linkage Method

MethodHow it WorksBest ForWeakness
WardMinimizes within-cluster varianceCompact, equal-size clustersSensitive to outliers
CompleteMax distance between cluster membersTight, spherical clustersCan split natural groups
Average (UPGMA)Mean pairwise distanceBalanced / phylogeneticsCan create elongated shapes
SingleMin distance between clustersDetecting chains/bridgesChaining effect

Live Code Lab: Dendrogram with Cluster Summary

This code performs Ward's hierarchical clustering, draws a color-coded dendrogram with a cut-height threshold, and shows cluster sizes in a companion panel.

Live Code Editor
Code EditorPython
Loading editor...
Live Preview

Preparing preview

Running once automatically on first load

Learn by Experimenting

This is a safe playground for learning! Try changing:

  • • Colors: Modify color values to see different palettes
  • • Numbers: Adjust sizes, positions, or data ranges
  • • Labels: Update titles, axis names, or legends

Edit the code, run it, then open the full data visualization tool to continue with your own dataset.

Bonus: Circular Dendrogram

Circular (polar) dendrograms are more compact for large sample sets and are standard in phylogenetics and microbiome literature.

Live Code Editor
Code EditorPython
Loading editor...
Live Preview

Preparing preview

Running once automatically on first load

Learn by Experimenting

This is a safe playground for learning! Try changing:

  • • Colors: Modify color values to see different palettes
  • • Numbers: Adjust sizes, positions, or data ranges
  • • Labels: Update titles, axis names, or legends

Edit the code, run it, then open the full data visualization tool to continue with your own dataset.

Dendrogram Features

Multiple linkage methods

Ward, complete, average, single, weighted - switch with a single parameter change.

Auto color coding

Clusters are automatically colored below the cut threshold, making group membership instantly visible.

Optimal cut detection

Plotivy suggests the best number of clusters using silhouette scores and gap statistics.

Heatmap integration

Pair dendrograms with clustered heatmaps for the standard bioinformatics figure.

Chart gallery

Related Clustering Charts

More ways to explore hierarchical relationships

Browse all chart types →
Correlation heatmap with diverging color scale and coefficient annotations
Statistical•seaborn, matplotlib
From the chart gallery•Correlation analysis between variables

Heatmap

Represents data values as colors in a two-dimensional matrix format.

Sample code / prompt

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
import numpy as np

# Create correlation matrix for financial metrics
metrics = ['Revenue', 'Profit', 'Expenses', 'ROI', 'Customers', 'AOV', 'Marketing', 'Employees']
correlation_data = np.array([
    [1.00, 0.85, -0.45, 0.72, 0.88, 0.65, 0.72, 0.55],
    [0.85, 1.00, -0.78, 0.92, 0.75, 0.58, 0.63, 0.48],
Scatter plot of height vs weight colored by gender with regression line
Statistical•matplotlib, seaborn
From the chart gallery•Correlation analysis between metrics

Scatterplot

Displays values for two variables as points on a Cartesian coordinate system.

Sample code / prompt

import matplotlib.pyplot as plt
import numpy as np
from scipy import stats
import pandas as pd

# Generate sample data
np.random.seed(42)
n_samples = 200
height = np.random.normal(170, 8, n_samples)
weight = height * 0.6 + np.random.normal(0, 8, n_samples) - 50
Radar chart comparing performance metrics of two models
Comparison•matplotlib, plotly
From the chart gallery•Product feature comparison

Radar Chart

Displays multivariate data on axes starting from a central point.

Sample code / prompt

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
import pandas as pd

# EV Model comparison data (0-100 scale)
categories = ['Range', 'Acceleration', 'Charging Speed',
              'Interior Quality', 'Technology', 'Value']
tesla_scores = [85, 90, 88, 70, 95, 80]
bmw_scores = [70, 80, 75, 90, 85, 65]
Bar chart comparing average scores across 5 groups with error bars
Comparison•matplotlib, seaborn
From the chart gallery•Comparing performance across categories

Bar Chart

Compares categorical data using rectangular bars with heights proportional to values.

Sample code / prompt

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats

# Generate performance scores for 5 treatment groups
np.random.seed(42)
groups = ['Control', 'Treatment A', 'Treatment B', 'Treatment C', 'Treatment D']
n_samples = 30
Multi-line graph showing temperature trends for 3 cities over a year
Time Series•matplotlib, seaborn
From the chart gallery•Stock price tracking over time

Line Graph

Displays data points connected by straight line segments to show trends over time.

Sample code / prompt

import matplotlib.pyplot as plt
import numpy as np

# Generate temperature data for 3 major US cities over 12 months
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
nyc = [30, 32, 40, 52, 65, 75, 82, 81, 74, 63, 50, 38]
miami = [65, 66, 70, 76, 82, 87, 90, 90, 87, 80, 72, 66]
chicago = [25, 27, 35, 48, 62, 72, 80, 79, 71, 60, 45, 32]

# Create figure with enhanced styling

Reveal Hidden Clusters in Your Data

Upload a matrix of samples and features. Plotivy performs hierarchical clustering and generates publication-ready dendrograms in seconds.