[R-pkg-devel] Using ggplot2 within another package

Robert M. Flight r|||ght79 @end|ng |rom gm@||@com
Thu Apr 22 22:45:19 CEST 2021


Kevin,

This vignette from ggplot2 itself gives the "officially recommended" ways
to avoid the warnings from R CMD check

https://ggplot2.tidyverse.org/articles/ggplot2-in-packages.html

Cheers,

-Robert

On Thu, Apr 22, 2021 at 4:39 PM Paul SAVARY <paul.savary using univ-fcomte.fr>
wrote:

> Hi Kevin,
>
> I was faced to the same problem and I used 'aes_string()' instead of
> 'aes()'. You can then just write the name of the columns containing the
> data to plot as character strings.
>
> Example:
>
> myPlot <- function(myData, ...) {
>     # get ready
>     ggplot(myData, aes_string(x = "myX", y = "myY")) +
>        # add my decorations
>        theme_bw()
> }
>
> It is probably already the case for your function but you need to include
> #' @import ggplot2 in your function preamble (if I am not wrong).
>
> Kind regards
> Paul
>
> ----- Mail original -----
> De: "Kevin R. Coombes" <kevin.r.coombes using gmail.com>
> À: "r-package-devel" <r-package-devel using r-project.org>
> Envoyé: Jeudi 22 Avril 2021 22:28:55
> Objet: [R-pkg-devel] Using ggplot2 within another package
>
> Hi,
>
> I'm trying to help clean up an R package for someone else to submit to
> CRAN. He has used ggplot2 to implement a plotting function for the kinds
> of things that his packages generates. His plotting routine basically
> looks like (after changing names to protect the innocent):
>
> myPlot <- fucntion(myData, ...) {
>     # get ready
>     ggplot(myData, aes(x = myX, y = myY)) +
>        # add my decorations
>        theme_bw()
> }
>
> Of course, "R CMD check --as-cran" complains that there is no global
> binding for "myX" or "myY" since they are columns defined in the
> data.frame "myData".
>
> What is the best way to work around this issue?
>
> Of course, dinosaurs like myself might be tempted to suggest just using
> plain old "plot", so I don't need to see those suggestions.
>
> Do I just ignore the usual ggplot conventions and write "myData$myX"
> inside "aes"  in order to appease the CRAN checker? Or is there some
> tidy-er way to solve this problem?
>
> Thanks,
>    Kevin
>
> ______________________________________________
> R-package-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>
> ______________________________________________
> R-package-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>

	[[alternative HTML version deleted]]



More information about the R-package-devel mailing list