Skip to content

Repository files navigation

AlgebraOfGraphics Logo

CI codecov.io DOI

Visualize your data using a few simple building blocks that can be composed using + and *. AlgebraOfGraphics puts a new algebraic spin on the grammar of graphics idea known from R’s ggplot2 package.

Visualizations are powered by Makie and you have its full capabilities available to tweak figures produced by AlgebraOfGraphics.

Example

using AlgebraOfGraphics, CairoMakie

penguins = AlgebraOfGraphics.penguins()

set_aog_theme!()
update_theme!(Axis = (; width = 150, height = 150))

spec = data(penguins) * mapping(:bill_length_mm, :bill_depth_mm)

draw(spec)

by_color = spec * mapping(color = :species)

draw(by_color)

with_regression = by_color * (linear() + visual(alpha = 0.3))

draw(with_regression)

facetted = with_regression * mapping(col = :sex)

draw(facetted)

draw(facetted, scales(Color = (; palette = :Set1_3)))

Citing AlgebraOfGraphics

If you use AlgebraOfGraphics for a scientific publication, please acknowledge and support our work by citing our JOSS paper the following way:

Krumbiegel & Vertechi, (2026). AlgebraOfGraphics.jl: A Makie-powered algebraic grammar of graphics for Julia.
Journal of Open Source Software, 11(123), 10894, https://doi.org/10.21105/joss.10894

BibTeX entry:

@article{Krumbiegel2026,
  doi = {10.21105/joss.10894},
  url = {https://doi.org/10.21105/joss.10894},
  year = {2026},
  publisher = {The Open Journal},
  volume = {11},
  number = {123},
  pages = {10894},
  author = {Krumbiegel, Julius and Vertechi, Pietro},
  title = {{AlgebraOfGraphics.jl}: A {Makie}-powered algebraic grammar of graphics for {Julia}},
  journal = {Journal of Open Source Software}
}

or download the BibTeX file.

Contributing

See CONTRIBUTING.md for how to get help, report bugs, and contribute code or documentation.

Acknowledgements

Analyses rely on StatsBase.jl, Loess.jl, KernelDensity.jl, and GLM.jl. Some of their documentation is transcribed here.

About

An algebraic spin on grammar-of-graphics data visualization in Julia. Powered by the Makie.jl plotting ecosystem.

Resources

Contributing

Stars

518 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages