From 6285253f997e4d593eb8ba5f5996b0b18b0fab06 Mon Sep 17 00:00:00 2001 From: pvictor <perrier.victor@gmail.com> Date: Fri, 10 Jan 2025 11:15:41 +0100 Subject: [PATCH] get geom args: also retrieve stat args --- DESCRIPTION | 2 +- R/geometries.R | 8 ++++++++ tests/testthat/Rplots.pdf | Bin 3830 -> 3667 bytes tests/testthat/test-geoms.R | 2 +- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 3e553eab..0a239079 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Package: esquisse Type: Package Title: Explore and Visualize Your Data Interactively -Version: 2.0.1 +Version: 2.0.1.9000 Authors@R: c(person("Fanny", "Meyer", role = c("aut")), person("Victor", "Perrier", email = "victor.perrier@dreamrs.fr", role = c("aut", "cre")), person("Ian", "Carroll", comment = "Faceting support", role = "ctb"), diff --git a/R/geometries.R b/R/geometries.R index 346922d3..dd9e223e 100644 --- a/R/geometries.R +++ b/R/geometries.R @@ -233,6 +233,14 @@ match_geom_args <- function(geom, if (!inherits(stat_args, "try-error")) { geom_args <- c(geom_args, stat_args) } + } else if (!is.null(geom_args$stat)) { + stat_args <- try( + formals(fun = get(paste0("stat_", geom_args$stat), envir = pkg_envir)), + silent = TRUE + ) + if (!inherits(stat_args, "try-error")) { + geom_args <- c(geom_args, stat_args) + } } # browser() if (isTRUE(add_aes)) { diff --git a/tests/testthat/Rplots.pdf b/tests/testthat/Rplots.pdf index 3c9b24963bdbd615c6fa408e194e155f3af9961a..b9a6e393aa9fd7de71ccd964e8d0cf2b96db797d 100644 GIT binary patch delta 71 zcmew+ds$|JiMpwQp&<|%8X1~va_Rf#r?@1Rq$+5*SQ!}@A<0dQ)?+l@*tMKz^A%nR QMlNFuOD<JaSARDy0JgdkUjP6A delta 236 zcmYj}Jx&8L5Jr{Of}R4TDTsh3vuim~pbqI!4v=bM&n^~T8~lUl=&6!Zq((UkccG4< zK(z0B-}^fMzSycO)hOAvGc|AKHv%7mSx{!UUfjt>{@Zrz$w+>F>`&frXZTV=X2)F? ztx{-0cASz0>?6H0An8&QsBP3`=p4TRX6sBv1L+t%;3o2qSf8Xd`z+8{j+|@)ocNFp zcYx9QzE;>+=je}L0zMYsQ!Im{k^w^>JU>;De$(lhG#}d2vyqrir5KOzS4(jOow7@* diff --git a/tests/testthat/test-geoms.R b/tests/testthat/test-geoms.R index d0691984..8f6cb81a 100644 --- a/tests/testthat/test-geoms.R +++ b/tests/testthat/test-geoms.R @@ -24,7 +24,7 @@ test_that("match_geom_args works", { histo_params <- match_geom_args(geom = "histogram", args = params, add_aes = FALSE) expect_length(histo_params, 2) histo_params <- match_geom_args(geom = "violin", args = params) - expect_length(histo_params, 3) + expect_length(histo_params, 4) })