Discrete scale constructor for color argument.
Source:R/scale_duke_color_discrete.R
scale_duke_color_discrete.Rd
Applies a Duke branded and accessible discrete color palette to ggplot geometric objects using color argument. It prioritizes high contrast colors aligned with Web Content Accessibility Guidelines (WCAG).
Usage
scale_duke_color_discrete(..., na.value = "#B5B5B5")
scale_duke_colour_discrete(..., na.value = "#B5B5B5")
Details
Partial code for this function can be attributed to ggthemes.
Examples
library(ggplot2)
library(dplyr)
#>
#> Attaching package: ‘dplyr’
#> The following objects are masked from ‘package:stats’:
#>
#> filter, lag
#> The following objects are masked from ‘package:base’:
#>
#> intersect, setdiff, setequal, union
library(palmerpenguins)
# default
ggplot(penguins, aes(x = bill_depth_mm, y = bill_length_mm, color = species)) +
geom_point()
#> Warning: Removed 2 rows containing missing values (`geom_point()`).
# vs. with Duke scale
ggplot(penguins, aes(x = bill_depth_mm, y = bill_length_mm, color = species)) +
geom_point() +
scale_duke_color_discrete()
#> Warning: Removed 2 rows containing missing values (`geom_point()`).
# vs. with shape and Duke scale
ggplot(penguins, aes(x = bill_depth_mm, y = bill_length_mm, shape = species, color = species)) +
geom_point() +
scale_duke_color_discrete()
#> Warning: Removed 2 rows containing missing values (`geom_point()`).
# vs. with Duke scale, UK spelling
ggplot(penguins, aes(x = bill_depth_mm, y = bill_length_mm, colour = species)) +
geom_point() +
scale_duke_colour_discrete()
#> Warning: Removed 2 rows containing missing values (`geom_point()`).
# Make some species NAs to demonstrate na.value usage
penguins_with_NAs <- penguins |>
mutate(species = if_else(species == "Gentoo", NA, species))
# with default na.value
ggplot(penguins_with_NAs, aes(x = body_mass_g, color = species)) +
geom_density() +
scale_duke_color_discrete()
#> Warning: Removed 2 rows containing non-finite values (`stat_density()`).
# with custom na.value
ggplot(penguins_with_NAs, aes(x = body_mass_g, color = species)) +
geom_density() +
scale_duke_color_discrete(na.value = "pink")
#> Warning: Removed 2 rows containing non-finite values (`stat_density()`).