Skip to content

Commit babb643

Browse files
authored
Merge branch 'main' into discrete_labels_from_break_names
2 parents f38cf14 + b29b831 commit babb643

File tree

189 files changed

+2652
-1611
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

189 files changed

+2652
-1611
lines changed

.github/workflows/R-CMD-check.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
cache-version: 3
6464
extra-packages: >
6565
any::rcmdcheck,
66-
Hmisc=?ignore-before-r=4.1.0,
66+
Hmisc=?ignore-before-r=4.2.0,
6767
quantreg=?ignore-before-r=4.3.0
6868
needs: check
6969

DESCRIPTION

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Package: ggplot2
2-
Version: 3.5.1.9000
32
Title: Create Elegant Data Visualisations Using the Grammar of Graphics
3+
Version: 3.5.1.9000
44
Authors@R: c(
55
person("Hadley", "Wickham", , "[email protected]", role = "aut",
66
comment = c(ORCID = "0000-0003-4757-117X")),
@@ -30,7 +30,7 @@ License: MIT + file LICENSE
3030
URL: https://ggplot2.tidyverse.org, https://github.com/tidyverse/ggplot2
3131
BugReports: https://github.com/tidyverse/ggplot2/issues
3232
Depends:
33-
R (>= 3.5)
33+
R (>= 4.0)
3434
Imports:
3535
cli,
3636
grDevices,
@@ -75,6 +75,7 @@ VignetteBuilder:
7575
knitr
7676
Config/Needs/website: ggtext, tidyr, forcats, tidyverse/tidytemplate
7777
Config/testthat/edition: 3
78+
Config/usethis/last-upkeep: 2024-10-24
7879
Encoding: UTF-8
7980
LazyData: true
8081
Roxygen: list(markdown = TRUE)

LICENSE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# MIT License
22

3-
Copyright (c) 2020 ggplot2 authors
3+
Copyright (c) 2024 ggplot2 core developer team
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

NAMESPACE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,6 @@ export(guides)
461461
export(has_flipped_aes)
462462
export(is.Coord)
463463
export(is.coord)
464-
export(is.element)
465464
export(is.facet)
466465
export(is.geom)
467466
export(is.ggplot)
@@ -475,6 +474,7 @@ export(is.position)
475474
export(is.scale)
476475
export(is.stat)
477476
export(is.theme)
477+
export(is.theme_element)
478478
export(label_both)
479479
export(label_bquote)
480480
export(label_context)

NEWS.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
* When discrete breaks have names, they'll be used as labels by default
44
(@teunbrand, #6147).
5+
* (internal) Using `after_scale()` in the `Geom*$default_aes()` field is now
6+
evaluated in the context of data (@teunbrand, #6135)
7+
* Fixed bug where binned scales wouldn't simultaneously accept transformations
8+
and function-limits (@teunbrand, #6144).
59
* Fixed bug where the `ggplot2::`-prefix did not work with `stage()`
610
(@teunbrand, #6104).
711
* New `get_labs()` function for retrieving completed plot labels
@@ -186,6 +190,7 @@
186190
* The ellipsis argument is now checked in `fortify()`, `get_alt_text()`,
187191
`labs()` and several guides (@teunbrand, #3196).
188192
* `stat_summary_bin()` no longer ignores `width` parameter (@teunbrand, #4647).
193+
* Added `keep.zeroes` argument to `stat_bin()` (@teunbrand, #3449)
189194

190195
# ggplot2 3.5.1
191196

@@ -232,6 +237,7 @@ documentation updates.
232237
* `annotate()` now warns about `stat` or `position` arguments (@teunbrand, #5151)
233238
* `guide_coloursteps(even.steps = FALSE)` now works with discrete data that has
234239
been formatted by `cut()` (@teunbrand, #3877).
240+
* `ggsave()` now offers to install svglite if needed (@eliocamp, #6166).
235241

236242
# ggplot2 3.5.0
237243

R/backports.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,6 @@ on_load({
6767
as.mask <- grid::as.mask
6868
}
6969
if ("linearGradient" %in% getNamespaceExports("grid")) {
70-
linearGradient <- grid::linearGradient()
70+
linearGradient <- grid::linearGradient
7171
}
7272
})

R/bin.R

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,7 @@ bin_breaks <- function(breaks, closed = c("right", "left")) {
5454

5555
bin_breaks_width <- function(x_range, width = NULL, center = NULL,
5656
boundary = NULL, closed = c("right", "left")) {
57-
if (length(x_range) != 2) {
58-
cli::cli_abort("{.arg x_range} must have two elements.")
59-
}
57+
check_length(x_range, 2L)
6058

6159
# binwidth seems to be the argument name supplied to width. (stat-bin and stat-bindot)
6260
check_number_decimal(width, min = 0, allow_infinite = FALSE, arg = "binwidth")
@@ -106,9 +104,7 @@ bin_breaks_width <- function(x_range, width = NULL, center = NULL,
106104

107105
bin_breaks_bins <- function(x_range, bins = 30, center = NULL,
108106
boundary = NULL, closed = c("right", "left")) {
109-
if (length(x_range) != 2) {
110-
cli::cli_abort("{.arg x_range} must have two elements.")
111-
}
107+
check_length(x_range, 2L)
112108

113109
check_number_whole(bins, min = 1)
114110
if (zero_range(x_range)) {

R/coord-.R

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -281,14 +281,6 @@ check_coord_limits <- function(
281281
if (is.null(limits)) {
282282
return(invisible(NULL))
283283
}
284-
if (!obj_is_vector(limits) || length(limits) != 2) {
285-
what <- "{.obj_type_friendly {limits}}"
286-
if (is.vector(limits)) {
287-
what <- paste0(what, " of length {length(limits)}")
288-
}
289-
cli::cli_abort(
290-
paste0("{.arg {arg}} must be a vector of length 2, not ", what, "."),
291-
call = call
292-
)
293-
}
284+
check_object(limits, is_vector, "a vector", arg = arg, call = call)
285+
check_length(limits, 2L, arg = arg, call = call)
294286
}

R/facet-.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -237,8 +237,8 @@ Facet <- ggproto("Facet", NULL,
237237
# Set panel names
238238
table$layout$name <- paste(
239239
"panel",
240-
rep(seq_len(dim[2]), dim[1]),
241-
rep(seq_len(dim[1]), each = dim[2]),
240+
rep(seq_len(dim[2]), each = dim[1]),
241+
rep(seq_len(dim[1]), dim[2]),
242242
sep = "-"
243243
)
244244

R/geom-.R

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,13 @@ Geom <- ggproto("Geom",
136136
themed_defaults <- eval_from_theme(default_aes, theme)
137137
default_aes[names(themed_defaults)] <- themed_defaults
138138

139+
# Mark staged/scaled defaults as modifier (#6135)
140+
delayed <- is_scaled_aes(default_aes) | is_staged_aes(default_aes)
141+
if (any(delayed)) {
142+
modifiers <- defaults(modifiers, default_aes[delayed])
143+
default_aes <- default_aes[!delayed]
144+
}
145+
139146
missing_eval <- lapply(default_aes, eval_tidy)
140147
# Needed for geoms with defaults set to NULL (e.g. GeomSf)
141148
missing_eval <- compact(missing_eval)

0 commit comments

Comments
 (0)