Hello,

Package 'ggplot2' defines `ggplot()` as an S3 generic.

My package 'ggspectra' defines some specializations of ggplot() for 
additional classes, which work as expected together with all packages 
extending 'ggplot2' that I have tested, except for 'ggtern'.

Package 'ggtern' imports 'ggplot2' and then redefines the ggplot() 
generic with exactly the same code as in 'ggplot2' itself.

If one attempts to use my package and 'ggtern' in the same session, 
dispatch fails for the ggplot() specializations defined in my package, 
unless an explicit call to ggplot2::ggpplot() is used.

I do not understand why the generic needs to be redefined in 'ggtern', 
and although I have raised an issue for 'ggtern' last November, the just 
released version of 'ggtern' retains the redefinition of the generic.

So, I have some questions:

1) Can I do anything in my own package to ensure that method dispatch 
works correctly even after 'ggtern' is attached?

2) Is it good practice for a package to redefine a generic from an 
imported package?

3) Is it possible to redefine a generic, without disturbing the dispatch 
of specializations already known to R?

Thanks in advance for any insights,

Pedro.

-- 
------------------------------------------------------------------------
Pedro J. Aphalo
University Lecturer, Principal Investigator
(Office 4417, Biocenter 3, Viikinkaari 1)

Department of Biosciences
Plant Biology
P.O. Box 65
00014 University of Helsinki
Finland

e-mail: pedro.aph...@helsinki.fi <mailto:pedro.aph...@helsinki.fi>
Tel. (mobile) +358 50 4150623
Tel. (office) +358 2941 57897

------------------------------------------------------------------------
*Web sites and blogs*
Web site (research group): http://blogs.helsinki.fi/senpep-blog/
Web site (own teaching): http://www.helsinki.fi/people/pedro.aphalo/
Web site (using R in photobiology): http://www.r4photobiology.info/
------------------------------------------------------------------------
*Societies*
UV4Plants <http://www.uv4plants.org/> (communications officer), ESP 
<http://www.photobiology.eu/> (member) SEB <http://www.sebiology.org/> 
(member), BES <http://www.britishecologicalsociety.org/> (member), SPPS 
<http://www.spps.fi/> (member), SMS 
<http://www.metsatieteellinenseura.fi/english> (member), TUG 
<http://tug.org/> (member), FOAS <http://www.foastat.org/> (member).
------------------------------------------------------------------------

        [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to