Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/makieorg/algebraofgraphics.jl
An algebraic spin on grammar-of-graphics data visualization in Julia. Powered by the Makie.jl plotting ecosystem.
https://github.com/makieorg/algebraofgraphics.jl
Last synced: about 1 month ago
JSON representation
An algebraic spin on grammar-of-graphics data visualization in Julia. Powered by the Makie.jl plotting ecosystem.
- Host: GitHub
- URL: https://github.com/makieorg/algebraofgraphics.jl
- Owner: MakieOrg
- License: mit
- Created: 2020-03-12T15:39:03.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-23T01:57:29.000Z (2 months ago)
- Last Synced: 2024-10-23T11:22:37.005Z (2 months ago)
- Language: Julia
- Homepage: https://aog.makie.org
- Size: 327 MB
- Stars: 439
- Watchers: 6
- Forks: 45
- Open Issues: 88
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# AlgebraOfGraphics
[![CI](https://github.com/MakieOrg/AlgebraOfGraphics.jl/actions/workflows/ci.yml/badge.svg)](https://github.com/MakieOrg/AlgebraOfGraphics.jl/actions/workflows/ci.yml)
[![codecov.io](https://codecov.io/github/MakieOrg/AlgebraOfGraphics.jl/coverage.svg?branch=master)](http://codecov.io/github/MakieOrg/AlgebraOfGraphics.jl?branch=master)
[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://aog.makie.org/stable)
[![](https://img.shields.io/badge/docs-dev-blue.svg)](https://aog.makie.org/dev)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](https://ggplot2.tidyverse.org/) package.Visualizations are powered by
[Makie](https://github.com/MakieOrg/Makie.jl) and you have its full
capabilities available to tweak figures produced by AlgebraOfGraphics.## Example
``` julia
using AlgebraOfGraphics, CairoMakie, PalmerPenguins, DataFramespenguins = dropmissing(DataFrame(PalmerPenguins.load()))
set_aog_theme!()
update_theme!(Axis = (; width = 150, height = 150))spec = data(penguins) * mapping(:bill_length_mm, :bill_depth_mm)
draw(spec)
```![](README_files/figure-commonmark/cell-3-output-1.svg)
``` julia
by_color = spec * mapping(color = :species)draw(by_color)
```![](README_files/figure-commonmark/cell-4-output-1.svg)
``` julia
with_regression = by_color * (linear() + visual(alpha = 0.3))draw(with_regression)
```![](README_files/figure-commonmark/cell-5-output-1.svg)
``` julia
facetted = with_regression * mapping(col = :sex)draw(facetted)
```![](README_files/figure-commonmark/cell-6-output-1.svg)
``` julia
draw(facetted, scales(Color = (; palette = :Set1_3)))
```![](README_files/figure-commonmark/cell-7-output-1.svg)
## Acknowledgements
Analyses rely on
[StatsBase.jl](https://github.com/JuliaStats/StatsBase.jl),
[Loess.jl](https://github.com/JuliaStats/Loess.jl),
[KernelDensity.jl](https://github.com/JuliaStats/KernelDensity.jl), and
[GLM.jl](https://github.com/JuliaStats/GLM.jl). Some of their
documentation is transcribed here.Logo and favicon made with ๐งก by @dyogurt.