Skip to content

Commit 842e6be

Browse files
authored
Fix linetype regression (#6097)
* don't set `na.value = "blank"` * add test
1 parent d742881 commit 842e6be

File tree

5 files changed

+14
-7
lines changed

5 files changed

+14
-7
lines changed

R/scale-linetype.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
#' scale_linetype_identity() +
3636
#' facet_grid(linetype ~ .) +
3737
#' theme_void(20)
38-
scale_linetype <- function(name = waiver(), ..., na.value = "blank") {
38+
scale_linetype <- function(name = waiver(), ..., na.value = NA) {
3939
discrete_scale(
4040
"linetype", name = name,
4141
palette = pal_linetype(),
@@ -46,7 +46,7 @@ scale_linetype <- function(name = waiver(), ..., na.value = "blank") {
4646

4747
#' @rdname scale_linetype
4848
#' @export
49-
scale_linetype_binned <- function(name = waiver(), ..., na.value = "blank") {
49+
scale_linetype_binned <- function(name = waiver(), ..., na.value = NA) {
5050
binned_scale(
5151
"linetype", name = name,
5252
palette = pal_binned(pal_linetype()),

R/scale-manual.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ scale_shape_manual <- function(..., values, breaks = waiver(), na.value = NA) {
119119
#' @seealso
120120
#' Other linetype scales: [scale_linetype()], [scale_linetype_identity()].
121121
#' @export
122-
scale_linetype_manual <- function(..., values, breaks = waiver(), na.value = "blank") {
122+
scale_linetype_manual <- function(..., values, breaks = waiver(), na.value = NA) {
123123
manual_scale("linetype", values, breaks, ..., na.value = na.value)
124124
}
125125

man/scale_linetype.Rd

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/scale_manual.Rd

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tests/testthat/test-scale-manual.R

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,3 +176,10 @@ test_that("NAs from palette are not translated (#5929)", {
176176
s3$train(c("8", "6", "4"))
177177
expect_equal(s3$map(c("4", "6", "8", "10")), c("a", NA, "c", NA))
178178
})
179+
180+
test_that("numeric linetype palettes are mapped correctly (#6096)", {
181+
x <- c(LETTERS[1:3], NA)
182+
sc <- scale_linetype_manual(values = 1:5)
183+
sc$train(x)
184+
expect_equal(sc$map(x), c(1L, 2L, 3L, NA))
185+
})

0 commit comments

Comments
 (0)