--- title: "Themes" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{06 Themes} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r setup, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, comment = "#>", dpi = 150, fig.asp = .8, fig.width = 6, fig.height = 5, out.width = "70%", fig.align = "center", message = FALSE, warning = FALSE ) library(ggpop) library(ggplot2) ``` `ggpop` ships three built-in themes optimized for icon charts: | Theme | Description | |:---|:---| | `theme_pop()` | Default -- clean, no axes | | `theme_pop_dark()` | Dark background variant | | `theme_pop_minimal()` | Ultra-minimal, no legend or titles | ```{r shared-data, include = FALSE} df_t <- data.frame( grp = rep(c("A", "B"), each = 10), icon = rep(c("circle", "square"), each = 10) ) ``` ## `theme_pop()` Default theme. Removes axes and gridlines. Layer standard `theme()` calls on top to customize further. ```{r theme-pop} ggplot() + geom_pop(data = df_t, aes(icon = icon, color = grp), size = 2, dpi = 72) + scale_color_manual(values = c(A = "#1E88E5", B = "#E53935")) + theme_pop() + labs(title = "theme_pop()", color = NULL) ``` ## `theme_pop_dark()` Dark background variant. Use lighter colors to maintain contrast. ```{r theme-pop-dark} ggplot() + geom_pop(data = df_t, aes(icon = icon, color = grp), size = 2, dpi = 72) + scale_color_manual(values = c(A = "#64B5F6", B = "#EF9A9A")) + theme_pop_dark() + labs(title = "theme_pop_dark()", color = NULL) ``` ## `theme_pop_minimal()` Ultra-minimal. No axes, no legend, no titles. Useful for embedding charts in dashboards or slides where context is provided externally. ```{r theme-pop-minimal} ggplot() + geom_pop(data = df_t, aes(icon = icon, color = grp), size = 2, dpi = 72) + scale_color_manual(values = c(A = "#1E88E5", B = "#E53935")) + theme_pop_minimal() ```