Skip to contents

Filter colors based on a luminance threshold

Usage

luminance_filter(colors, dark_mode, luminance_threshold = 0.5)

Arguments

colors

chr color vector

dark_mode

lgl colors will be >= if TRUE, otherwise <= if FALSE

luminance_threshold

lgl 0-1 luminance threshold to filter

Value

chr vector of colors

Examples

x <- tibble::tribble(
~CSS.Name, ~Hex.Code, ~Decimal.Code,
"Black",        "#000000",            "(0,0,0)",
"White",        "#FFFFFF",      "(255,255,255)",
"Red",        "#FF0000",          "(255,0,0)",
"Lime",        "#00FF00",          "(0,255,0)",
"Blue",        "#0000FF",          "(0,0,255)",
"Yellow",        "#FFFF00",        "(255,255,0)",
"Cyan / Aqua",        "#00FFFF",        "(0,255,255)",
"Magenta / Fuchsia",        "#FF00FF",        "(255,0,255)",
"Silver",        "#C0C0C0",      "(192,192,192)",
"Gray",        "#808080",      "(128,128,128)",
"Maroon",        "#800000",          "(128,0,0)",
"Olive",        "#808000",        "(128,128,0)",
"Green",        "#008000",          "(0,128,0)",
"Purple",        "#800080",        "(128,0,128)",
"Teal",        "#008080",        "(0,128,128)",
"Navy",        "#000080",          "(0,0,128)"
)
luminance_filter(x$Hex.Code, TRUE)
#> [1] "#FFFFFF" "#00FF00" "#FFFF00" "#00FFFF" "#C0C0C0"
luminance_filter(x$Hex.Code, FALSE)
#>  [1] "#000000" "#FF0000" "#0000FF" "#FF00FF" "#808080" "#800000" "#808000"
#>  [8] "#008000" "#800080" "#008080" "#000080"