diff --git a/NAMESPACE b/NAMESPACE index fc16f70c..3c886227 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -120,10 +120,10 @@ export(label_comma) export(label_currency) export(label_date) export(label_date_short) +export(label_dictionary) export(label_dollar) export(label_glue) export(label_log) -export(label_lut) export(label_math) export(label_number) export(label_number_auto) diff --git a/NEWS.md b/NEWS.md index 322634b8..d2fa3e3d 100644 --- a/NEWS.md +++ b/NEWS.md @@ -10,8 +10,7 @@ using `get_palette()` or registered using `set_palette()` (#396). * `label_log()` has a `signed` argument for displaying negative numbers (@teunbrand, #421). - -* New `label_lut()` for named lookup of labels (#458). +* New `label_dictionary()` for named lookup of labels (#458). # scales 1.3.0 diff --git a/R/label-lut.R b/R/label-dictionary.R similarity index 62% rename from R/label-lut.R rename to R/label-dictionary.R index 08216b86..0c296f86 100644 --- a/R/label-lut.R +++ b/R/label-dictionary.R @@ -1,13 +1,14 @@ #' Labels from lookup tables #' -#' Use `label_lut()` for looking up succinct breaks in a named character vector -#' giving complete labels. +#' Use `label_dictionary()` for looking up succinct breaks in a named character +#' vector giving complete labels. #' -#' @param lut A named character vector of labels. The names are expected to -#' match the breaks, and the values become the labels. -#' @param nomatch A string to label breaks that do not match any name in `lut`. -#' When `NULL` (default), the breaks are not translated but are kept as-is. +#' @param dictionary A named character vector of labels. The names are expected +#' to match the breaks, and the values become the labels. +#' @param nomatch A string to label breaks that do not match any name in +#' `dictionary`. When `NULL` (default), the breaks are not translated but are +#' kept as-is. #' #' @return A labeller function that takes a character vector of breaks and #' returns a character vector of labels. @@ -22,15 +23,15 @@ #' ) #' #' # Typical usage -#' demo_discrete(c("4", "r", "f"), labels = label_lut(lut)) +#' demo_discrete(c("4", "r", "f"), labels = label_dictionary(lut)) #' # By default, extra values ('w') will remain as-is -#' demo_discrete(c("4", "r", "f", "w"), labels = label_lut(lut)) +#' demo_discrete(c("4", "r", "f", "w"), labels = label_dictionary(lut)) #' # Alternatively, you can relabel extra values #' demo_discrete( #' c("4", "r", "f", "w"), -#' labels = label_lut(lut, nomatch = "unknown") +#' labels = label_dictionary(lut, nomatch = "unknown") #' ) -label_lut <- function(lut = character(), nomatch = NULL) { +label_dictionary <- function(dictionary = character(), nomatch = NULL) { if (!is.character(lut)) { cli::cli_abort("The {.arg lut} argument must be a character vector.") diff --git a/man/label_lut.Rd b/man/label_dictionary.Rd similarity index 55% rename from man/label_lut.Rd rename to man/label_dictionary.Rd index 7729d59a..ded7a697 100644 --- a/man/label_lut.Rd +++ b/man/label_dictionary.Rd @@ -1,25 +1,26 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/label-lut.R -\name{label_lut} -\alias{label_lut} +\name{label_dictionary} +\alias{label_dictionary} \title{Labels from lookup tables} \usage{ -label_lut(lut = character(), nomatch = NULL) +label_dictionary(dictionary = character(), nomatch = NULL) } \arguments{ -\item{lut}{A named character vector of labels. The names are expected to -match the breaks, and the values become the labels.} +\item{dictionary}{A named character vector of labels. The names are expected +to match the breaks, and the values become the labels.} -\item{nomatch}{A string to label breaks that do not match any name in \code{lut}. -When \code{NULL} (default), the breaks are not translated but are kept as-is.} +\item{nomatch}{A string to label breaks that do not match any name in +\code{dictionary}. When \code{NULL} (default), the breaks are not translated but are +kept as-is.} } \value{ A labeller function that takes a character vector of breaks and returns a character vector of labels. } \description{ -Use \code{label_lut()} for looking up succinct breaks in a named character vector -giving complete labels. +Use \code{label_dictionary()} for looking up succinct breaks in a named character +vector giving complete labels. } \examples{ # Example lookup table @@ -30,13 +31,13 @@ lut <- c( ) # Typical usage -demo_discrete(c("4", "r", "f"), labels = label_lut(lut)) +demo_discrete(c("4", "r", "f"), labels = label_dictionary(lut)) # By default, extra values ('w') will remain as-is -demo_discrete(c("4", "r", "f", "w"), labels = label_lut(lut)) +demo_discrete(c("4", "r", "f", "w"), labels = label_dictionary(lut)) # Alternatively, you can relabel extra values demo_discrete( c("4", "r", "f", "w"), - labels = label_lut(lut, nomatch = "unknown") + labels = label_dictionary(lut, nomatch = "unknown") ) } \seealso{ diff --git a/man/label_glue.Rd b/man/label_glue.Rd index cde1b02e..f4001974 100644 --- a/man/label_glue.Rd +++ b/man/label_glue.Rd @@ -51,7 +51,7 @@ Other labels for continuous scales: \code{\link{label_scientific}()} Other labels for discrete scales: -\code{\link{label_lut}()}, +\code{\link{label_dictionary}()}, \code{\link{label_parse}()}, \code{\link{label_wrap}()} } diff --git a/man/label_parse.Rd b/man/label_parse.Rd index 7e76915e..8c712aff 100644 --- a/man/label_parse.Rd +++ b/man/label_parse.Rd @@ -57,8 +57,8 @@ Other labels for continuous scales: \code{\link{label_scientific}()} Other labels for discrete scales: +\code{\link{label_dictionary}()}, \code{\link{label_glue}()}, -\code{\link{label_lut}()}, \code{\link{label_wrap}()} } \concept{labels for continuous scales} diff --git a/man/label_wrap.Rd b/man/label_wrap.Rd index 78e04a7a..f853a7bc 100644 --- a/man/label_wrap.Rd +++ b/man/label_wrap.Rd @@ -34,8 +34,8 @@ demo_discrete(x, labels = label_wrap(20)) } \seealso{ Other labels for discrete scales: +\code{\link{label_dictionary}()}, \code{\link{label_glue}()}, -\code{\link{label_lut}()}, \code{\link{label_parse}()} } \concept{labels for discrete scales} diff --git a/tests/testthat/test-label-lut.R b/tests/testthat/test-label-lut.R index 36df0670..4b692024 100644 --- a/tests/testthat/test-label-lut.R +++ b/tests/testthat/test-label-lut.R @@ -1,11 +1,11 @@ -test_that("label_lut gives correct answers", { +test_that("label_dictionary gives correct answers", { short <- c("A", "B", "C") lut <- c("A" = "Apple", "C" = "Cherry", "D" = "Date") - expect_equal(label_lut(lut)(short), c("Apple", "B", "Cherry")) + expect_equal(label__dictionary(lut)(short), c("Apple", "B", "Cherry")) expect_equal( - label_lut(lut, nomatch = "Banana")(short), + label_dictionary(lut, nomatch = "Banana")(short), c("Apple", "Banana", "Cherry") ) })