Skip to content

Commit 13ff1fa

Browse files
Address review feedback: fix size/linewidth handling and pointrange defaults
- Error when both `size` and `linewidth` are supplied to resolve_linewidth() - Add deprecation warning in ppc_rootogram() when `size` is used (previously controlled both point size and line width silently) - Change default `size` for pointrange functions from 2.5 back to 1 (size=2.5 with ggplot2 4.0's internal fatten=4 produced oversized points) - Apply NEWS.md wording suggestions - Remove duplicate @importFrom lifecycle line in bayesplot-package.R - Update rootogram tests to use `linewidth` instead of deprecated `size` - Regenerate vdiffr snapshots for updated defaults
1 parent fdc93ca commit 13ff1fa

29 files changed

Lines changed: 1389 additions & 1364 deletions

NAMESPACE

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,12 +217,11 @@ importFrom(dplyr,inner_join)
217217
importFrom(dplyr,left_join)
218218
importFrom(dplyr,mutate)
219219
importFrom(dplyr,n)
220-
importFrom(dplyr,one_of)
221220
importFrom(dplyr,pull)
222221
importFrom(dplyr,rename)
223222
importFrom(dplyr,select)
223+
importFrom(dplyr,slice_min)
224224
importFrom(dplyr,summarise)
225-
importFrom(dplyr,top_n)
226225
importFrom(dplyr,ungroup)
227226
importFrom(dplyr,vars)
228227
importFrom(ggplot2,"%+replace%")

NEWS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# bayesplot (development version)
22

3-
* Deprecate user-facing `size` arguments that controlled line width in favor of linewidth` across all plotting functions.
4-
* Deprecate the `fatten` argument in `ppc_intervals()`, `ppd_intervals()`,`ppc_loo_intervals()`, `ppc_bars()`, and their grouped variants. Point size in`geom_pointrange()` is now controlled directly by `size`.
3+
* Deprecate user-facing `size` arguments that controlled line width in favor of `linewidth` across all plotting functions.
4+
* Deprecate the `fatten` argument in `ppc_intervals()`, `ppd_intervals()`, `ppc_loo_intervals()`, `ppc_bars()`, and their grouped variants. Point size in `geom_pointrange()` is now controlled directly by `size`.
55
* Added unit tests for previously untested edge cases in `param_range()`, `param_glue()`, and `tidyselect_parameters()` (no-match, partial-match, and negation behavior).
66
* Bumped minimum version for `rstantools` from `>= 1.5.0` to `>= 2.0.0` .
77
* Use `rlang::warn()` and `rlang::inform()` for selected PPC user messages instead of base `warning()` and `message()`.

R/bayesplot-package.R

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
#' @import ggplot2 stats rlang
77
#' @importFrom lifecycle deprecated deprecate_warn is_present
88
#' @importFrom dplyr %>% summarise group_by select
9-
#' @importFrom lifecycle deprecated deprecate_warn is_present
109
#'
1110
#' @description
1211
#' \if{html}{

R/helpers-shared.R

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,18 @@ check_ignored_arguments <- function(..., ok_args = character()) {
5454
#' @return The resolved linewidth value.
5555
#' @noRd
5656
resolve_linewidth <- function(size, linewidth, default_linewidth, calling_fn = NULL) {
57+
fn_name <- calling_fn %||% "fn"
58+
if (!is.null(size) && !is.null(linewidth)) {
59+
abort(paste0(
60+
"Both `size` and `linewidth` were supplied to `", fn_name, "()`. ",
61+
"Please use only `linewidth`."
62+
))
63+
}
5764
if (!is.null(size)) {
5865
lifecycle::deprecate_warn(
5966
when = "1.16.0",
60-
what = paste0(calling_fn %||% "fn", "(size)"),
61-
with = paste0(calling_fn %||% "fn", "(linewidth)")
67+
what = paste0(fn_name, "(size)"),
68+
with = paste0(fn_name, "(linewidth)")
6269
)
6370
return(size)
6471
}

R/ppc-discrete.R

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ ppc_bars <-
163163
...,
164164
prob = 0.9,
165165
width = 0.9,
166-
size = 2.5,
166+
size = 1,
167167
fatten = deprecated(),
168168
linewidth = 1,
169169
freq = TRUE) {
@@ -173,7 +173,7 @@ ppc_bars <-
173173
check_ignored_arguments(...)
174174
dots$group <- NULL
175175
}
176-
size <- resolve_fatten(fatten, size, default_size = 2.5,
176+
size <- resolve_fatten(fatten, size, default_size = 1,
177177
calling_fn = "ppc_bars")
178178

179179
data <- ppc_bars_data(
@@ -231,7 +231,7 @@ ppc_bars_grouped <-
231231
facet_args = list(),
232232
prob = 0.9,
233233
width = 0.9,
234-
size = 2.5,
234+
size = 1,
235235
fatten = deprecated(),
236236
linewidth = 1,
237237
freq = TRUE) {
@@ -278,12 +278,32 @@ ppc_rootogram <- function(y,
278278
style = c("standing", "hanging", "suspended", "discrete"),
279279
...,
280280
prob = 0.9,
281-
size = 1,
282-
linewidth = 1,
281+
size = NULL,
282+
linewidth = NULL,
283283
bound_distinct = TRUE) {
284284
check_ignored_arguments(...)
285285
style <- match.arg(style)
286286

287+
if (!is.null(size) && !is.null(linewidth)) {
288+
abort(paste0(
289+
"Both `size` and `linewidth` were supplied to `ppc_rootogram()`. ",
290+
"Use `size` for point size and `linewidth` for line width."
291+
))
292+
}
293+
if (!is.null(size) && is.null(linewidth)) {
294+
lifecycle::deprecate_warn(
295+
"1.16.0",
296+
"ppc_rootogram(size)",
297+
details = paste0(
298+
"Previously `size` controlled both point size and line width. ",
299+
"Now use `size` for point size and `linewidth` for line width."
300+
)
301+
)
302+
linewidth <- size
303+
}
304+
size <- size %||% 1
305+
linewidth <- linewidth %||% 1
306+
287307
data <- .ppc_rootogram_data(
288308
y = y,
289309
yrep = yrep,

R/ppc-intervals.R

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ ppc_intervals <-
136136
prob = 0.5,
137137
prob_outer = 0.9,
138138
alpha = 0.33,
139-
size = 2.5,
139+
size = 1,
140140
fatten = deprecated(),
141141
linewidth = 1) {
142142

@@ -145,7 +145,7 @@ ppc_intervals <-
145145
check_ignored_arguments(...)
146146
dots$group <- NULL
147147
}
148-
size <- resolve_fatten(fatten, size, default_size = 2.5,
148+
size <- resolve_fatten(fatten, size, default_size = 1,
149149
calling_fn = "ppc_intervals")
150150

151151
data <-
@@ -204,7 +204,7 @@ ppc_intervals_grouped <-
204204
prob = 0.5,
205205
prob_outer = 0.9,
206206
alpha = 0.33,
207-
size = 2.5,
207+
size = 1,
208208
fatten = deprecated(),
209209
linewidth = 1) {
210210
check_ignored_arguments(...)

R/ppc-loo.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -546,12 +546,12 @@ ppc_loo_intervals <-
546546
prob = 0.5,
547547
prob_outer = 0.9,
548548
alpha = 0.33,
549-
size = 2.5,
549+
size = 1,
550550
fatten = deprecated(),
551551
linewidth = 1,
552552
order = c("index", "median")) {
553553
check_ignored_arguments(..., ok_args = list("moment_match"))
554-
size <- resolve_fatten(fatten, size, default_size = 2.5,
554+
size <- resolve_fatten(fatten, size, default_size = 1,
555555
calling_fn = "ppc_loo_intervals")
556556
y <- validate_y(y)
557557
order_by_median <- match.arg(order) == "median"

R/ppd-intervals.R

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ ppd_intervals <-
5757
prob = 0.5,
5858
prob_outer = 0.9,
5959
alpha = 0.33,
60-
size = 2.5,
60+
size = 1,
6161
fatten = deprecated(),
6262
linewidth = 1) {
6363

@@ -66,7 +66,7 @@ ppd_intervals <-
6666
check_ignored_arguments(...)
6767
dots$group <- NULL
6868
}
69-
size <- resolve_fatten(fatten, size, default_size = 2.5,
69+
size <- resolve_fatten(fatten, size, default_size = 1,
7070
calling_fn = "ppd_intervals")
7171

7272
data <- ppd_intervals_data(
@@ -111,7 +111,7 @@ ppd_intervals_grouped <-
111111
prob = 0.5,
112112
prob_outer = 0.9,
113113
alpha = 0.33,
114-
size = 2.5,
114+
size = 1,
115115
fatten = deprecated(),
116116
linewidth = 1) {
117117
check_ignored_arguments(...)

man/PPC-discrete.Rd

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

man/PPC-intervals.Rd

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

0 commit comments

Comments
 (0)