VoronoiBiomedPlot-package: Tesselation Visualization Plots for 2D Data

VoronoiBiomedPlot-packageR Documentation

Tesselation Visualization Plots for 2D Data

Description

Creates visualization plots for 2D data including ellipse plots, Voronoi tesselation plots, and combined ellipse-Voronoi plots. Designed to visualize class separation in 2D data, raw of from projection techniques like principal component analysis (PCA), partial least squares discriminant analysis (PLS-DA) or others. For more details see Lotsch and Kringel (2026) and Lotsch, J., and Kringel, D. (2026) <doi:10.1371/journal.pone.0333653>.

Details

The VoronoiBiomedPlot package provides functions for creating visualization plots of 2D data, particularly useful for biomedical data analysis and dimensionality reduction results. The package includes two main functions:

  • create_tesselation_plots: Creates three types of plots (ellipse, Voronoi, and combined)

  • create_voronoi_plot: Creates standalone Voronoi tessellation plots

These functions are designed to visualize class separation in two-dimensional raw or projected data, such as dimensionally reduced data from techniques like PCA, PLS-DA, UMAP, or other projection methods, commonly used in biomedical research. Voronoi tessellation divides the plot space into regions based on proximity to data points, providing an intuitive visualization of class boundaries and decision regions. Confidence ellipses show the distribution spread and correlation structure within each class. Both functions support an optional Voronoi island count, a visualization-intrinsic metric that quantifies class structure disruption by identifying data points whose Voronoi cells are entirely surrounded by cells of a different class. This metric has no equivalent in confidence ellipse visualizations and can be displayed as a plot subtitle via the show_island_count parameter.

Author(s)

Jorn Lotsch <j.lotsch@em.uni-frankfurt.de>

References

Lötsch, J. and A. Ultsch (2024). Comparative assessment of projection and clustering method combinations in the analysis of biomedical data. Informatics in Medicine Unlocked 50: 101573. https://www.sciencedirect.com/science/article/pii/S2352914824001291

See Also

Examples

# Load the iris dataset
data <- iris[, c("Sepal.Length", "Petal.Length", "Species")]

# Create comprehensive tesselation plots
plots <- create_tesselation_plots(
  data = data,
  class_column = "Species",
  legend_position = "bottom",
  add_grid_lines = FALSE
)

# Access individual plots
# plots$ellipse_plot
# plots$voronoi_plot
# plots$voronoi_plot_plus_ellipse

# Create standalone Voronoi plot
voronoi_plot <- create_voronoi_plot(
  data = data,
  class_column = "Species",
  legend_position = "bottom",
  add_grid_lines = FALSE
)

# Create standalone Voronoi plot with island count displayed as subtitle
voronoi_plot_islands <- create_voronoi_plot(
  data = data,
  class_column = "Species",
  legend_position = "bottom",
  add_grid_lines = FALSE,
  show_island_count = TRUE
)

VoronoiBiomedPlot documentation built on April 25, 2026, 9:06 a.m.