CTAN Comprehensive TeX Archive Network

Directory macros/latex/contrib/data-driven-visualization

README.md

Data Driven Visualization

Version 1.0.0 (2026-10-01)

ddv draws concentric arc charts from CSV data. It wraps wheelchart and datatool, adding category filtering, sorting, per-row colors, gradients, and configurable stage labels and titles. Each row becomes a separate ring; its start angle and angular span describe where it appears around the circle. The CTAN catalogue name is data-driven-visualization; load it with \usepackage{ddv}.

Requirements and installation

Use Lua with 2022-06-01 or newer and the packages wheelchart, datatool, xcolor, and TikZ (including decorations.text). Testing for this release used Live 2026. Other engines and older dependency versions have not been verified. The examples and manual additionally use fontspec and standard distribution fonts; no proprietary fonts are needed.

For a local project, place ddv.sty beside your document. For a user-wide installation, place it under tex/latex/ddv/ in your user TEXMF tree and refresh the filename database if your distribution requires it. Keep CSV files with the document, or provide a -searchable path.

Compile the included example with:

lualatex ddv-example.tex

No shell escape is required. Lua uses your configured font cache; the build does not rebuild or redirect it.

Usage

\documentclass{article}
\usepackage[dataset={ddv-example.csv}]{ddv}
\begin{document}
\resizebox{\linewidth}{!}{%
  \DDV{stages={{Plan,Collect,Analyse,Share}},
       title={A project overview},
       slices={fontcolor=white}}}
\end{document}

The required CSV headers are category,name,description,startangle,totalangle,color. The description may be empty. Angles are decimal degrees; a positive span runs clockwise from the start angle. See ddv-doc.pdf and its source for all options, CSV conventions, limitations, and further examples.

Building the documentation

The CTAN archive contains everything needed to compile the manual and example:

lualatex ddv-doc.tex
lualatex ddv-doc.tex
lualatex ddv-example.tex

The included makefile provides make (manual and example), make doc, make example, and make clean, all without Python. The fourteen ddv-demo-*.tex files supply the manual's paired listings and rendered charts; keep them beside ddv-doc.tex. Python development scripts stay in the repository and are excluded from the CTAN archive. The release files are listed in MANIFEST.txt; local domain-model examples, institutional logos, experiments, logs, caches, and Git metadata are excluded.

License and maintainer

Copyright 2025-2026 Lukas C. Bossert. Distributed under the Project Public License, version 1.3c or later. LPPL maintenance status: maintained. Current Maintainer: Lukas C. Bossert <bossert@itc.rwth-aachen.de>. See LICENSE, LPPL-1.3c.txt, and MANIFEST.txt.

Acknowledgements

This package builds on wheelchart by matexmatics and datatool by Nicola L. C. Talbot. The Stack Exchange community helped with the original design: 738083, 737987, 737932, 737843, 737689, 737629, 738278, and 738450.

Download the contents of this package in one zip archive (169.5k).

Data-driven-visualization – CSV-driven concentric arc charts with configurable stages and titles

The ddv package wraps wheelchart and datatool to draw concentric arc charts from CSV data. It supports category filtering, numeric and multi-column sorting, per-row colors, RGB colors, gradients, and configurable stage labels, titles, typography, and wheelchart options. The manual contains fourteen worked examples with source listings beside their rendered results. The package and its documentation are tested with Lua; no shell escape or Python is required to use the package or build the documentation.

PackageData-driven-visualization
Bug tracker
Repository
Version1.0.0
LicensesThe Project Public License 1.3c
Copyright2025–2026 Lukas C. Bossert
MaintainerLukas C. Bossert
TopicsCSV support
Graphics plot
Data display
...
Guest Book Sitemap Contact Contact Author