Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hrbrmstr/ggeconodist
📉 Create Diminutive Distribution Charts
https://github.com/hrbrmstr/ggeconodist
boxplots distribution ggplot2 r rstats
Last synced: 10 days ago
JSON representation
📉 Create Diminutive Distribution Charts
- Host: GitHub
- URL: https://github.com/hrbrmstr/ggeconodist
- Owner: hrbrmstr
- License: other
- Created: 2019-07-14T13:55:22.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-07-23T12:51:24.000Z (over 5 years ago)
- Last Synced: 2024-10-12T21:24:15.597Z (25 days ago)
- Topics: boxplots, distribution, ggplot2, r, rstats
- Language: R
- Homepage:
- Size: 1020 KB
- Stars: 71
- Watchers: 4
- Forks: 6
- Open Issues: 4
-
Metadata Files:
- Readme: README.Rmd
- License: LICENSE
Awesome Lists containing this project
README
---
output: rmarkdown::github_document
editor_options:
chunk_output_type: console
---
```{r pkg-knitr-opts, include=FALSE}
hrbrpkghelpr::global_opts()
``````{r badges, results='asis', echo=FALSE, cache=FALSE}
hrbrpkghelpr::stinking_badges()
```# ggeconodist
Create Diminutive Distribution Charts
## Description
'The Economist' has a unique boxplot aesthetic f or
communicating distrribution characteristics. Tools are provided
to create similar charts in 'ggplot2'.Inspired by:
## What's Inside The Tin
```{r ingredients, results='asis', echo=FALSE, cache=FALSE}
hrbrpkghelpr::describe_ingredients()
```The following functions are implemented:
## Installation
```{r install-ex, results='asis', echo=FALSE, cache=FALSE}
hrbrpkghelpr::install_block()
```## Usage
```{r lib-ex}
library(ggeconodist)# current version
packageVersion("ggeconodist")```
### The whole shebang
**YOU WILL NEED** to install [these fonts](https://github.com/economist-components/component-typography) to use the built-in theme. More on how to do that at some point.
```{r mam}
ggplot(mammogram_costs, aes(x = city)) +
geom_econodist(
aes(ymin = tenth, median = median, ymax = ninetieth),
stat = "identity", show.legend = TRUE
) +
scale_y_continuous(expand = c(0,0), position = "right", limits = range(0, 800)) +
coord_flip() +
labs(
x = NULL, y = NULL,
title = "Mammoscams",
subtitle = "United States, prices for a mammogram*\nBy metro area, 2016, $",
caption = "*For three large insurance companies\nSource: Health Care Cost Institute"
) +
theme_econodist() -> gggrid.newpage()
left_align(gg, c("subtitle", "title", "caption")) %>%
add_econodist_legend(econodist_legend_grob(), below = "subtitle") %>%
grid.draw()
``````{r mpg}
library(dplyr)
library(patchwork)
library(hrbrthemes)
library(gapminder)p <- ggplot(mpg, aes(class, hwy)) + theme_ipsum_rc()
(p + geom_boxplot()) +
(p + geom_econodist(width = 0.25)) +
plot_layout(ncol = 1)(p + geom_boxplot() + coord_flip()) +
(p + geom_econodist(tenth_col = ft_cols$blue, ninetieth_col = ft_cols$red) +
coord_flip()) +
plot_layout(ncol = 1)(p + geom_boxplot(aes(fill = factor(drv)))) +
(p + geom_econodist(aes(fill = factor(drv)))) +
plot_layout(ncol = 1)
``````{r gm, fig.width=600/72, fig.height=700/72}
gapminder %>%
filter(year %in% c(1952, 1962, 1972, 1982, 1992, 2002)) %>%
filter(continent != "Oceania") %>%
ggplot(aes(x = factor(year), y = lifeExp, fill = continent)) +
geom_econodist(
median_point_size = 1.2,
tenth_col = "#b07aa1",
ninetieth_col = "#591a4f",
show.legend = FALSE
) +
ggthemes::scale_fill_tableau(name = NULL) +
coord_flip() +
labs(
x = "Year", title = "Life Expectancy", y = NULL,
caption = "Example borrowed from @cmdline_tips"
) +
facet_wrap(~continent, nrow = 4) +
theme_ipsum_rc() -> gmgggrid.newpage()
gmgg %>%
add_econodist_legend(
econodist_legend_grob(
tenth_col = "#b07aa1",
ninetieth_col = "#591a4f",
),
below = "axis-b-1-4",
just = "right"
) %>%
grid.draw()
```## ggeconodist Metrics
```{r cloc, echo = FALSE}
cloc::cloc_pkg_md()
```## Code of Conduct
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.