I would like to make a plea for "publication-ready" figures from R.
The default figures produced by R (both traditional and lattice graphics) need
to be amended (by users) in many respects to be acceptable by publishers.
I imagine that most R users are producing figures for publication, and it seems
inefficient that so many adjustments need to be made.
Although publishers vary in their requirements, there is a general request for
minimal whitespace, and labelling of figure parts with a, b, c etc. in the top
left corner that should be easy to achieve in R.
For traditional graphics the main issues relate to white space, which could be
reduced by e.g. par(mar =c(3,3,1,1), mgp = c(2,0.5,0), las = 1, tcl = -0.25) as
defaults
Labelling parts inside the plot region can be achieved by e.g.
legend("topleft", legend = "A", bty = "n",
x.intersp = 0, y.intersp = 0).
Labelling parts outside the plot region can almost be achieved by e.g.
mtext("A", side = 3, adj = 0), although the label is too far to the
right, rather than being in the top left corner.
For lattice graphics, whitespace can be reduced by adjusting trellis parameters
as has been discussed previously, e.g.
https://stat.ethz.ch/pipermail/r-help/2007-January/123556.html
However, labelling panels in lattice with a,b,c etc. in the top left corner
seems extremely difficult and involved, as has been discussed previously e.g.
http://r.789695.n4.nabble.com/Adding-text-labels-to-lattice-plots-with-multiple-panels-td3436700.html
Although the lattice strips are very useful for identifying panels, publishers
(in my field, at least) never allow this kind of labelling.
Therefore my question is: Could the default plotting functions be amended to
make it easier for users to produce publication-ready graphics?
Dan Bebber
Department of Biosciences
University of Exeter
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 01/28/14, 12:12 , Bebber, Dan wrote:> I would like to make a plea for "publication-ready" figures from R. > The default figures produced by R (both traditional and lattice > graphics) need to be amended (by users) in many respects to be > acceptable by publishers. I imagine that most R users are > producing figures for publication, and it seems inefficient that so > many adjustments need to be made. Although publishers vary in > their requirements, there is a general request for minimal > whitespace, and labelling of figure parts with a, b, c etc. in the > top left corner that should be easy to achieve in R.As you say, publisher requirements are different, and Journal requirements as well. So I don't think it is a good idea to change the default values - correction: I think it would be a *very bad* idea! What you could do, is write a package which wraps plot functions in wrappers which set the wanted par values. But these would depend on range, how many data series in a plot, if I want color, and so on - so you might end with *numerous* new plot functions. I don't think it is necessary as the graphs can be easily adapted to the publishers need (as you say). Better idea: use the graph gallery http://rgraphgallery.blogspot.fr/ to add example graphs with the required settings for each Journal. Cheers, Rainer> > For traditional graphics the main issues relate to white space, > which could be reduced by e.g. par(mar =c(3,3,1,1), mgp > c(2,0.5,0), las = 1, tcl = -0.25) as defaults Labelling parts > inside the plot region can be achieved by e.g. legend("topleft", > legend = "A", bty = "n", x.intersp = 0, y.intersp = 0). Labelling > parts outside the plot region can almost be achieved by e.g. > mtext("A", side = 3, adj = 0), although the label is too far to the > right, rather than being in the top left corner. > > For lattice graphics, whitespace can be reduced by adjusting > trellis parameters as has been discussed previously, e.g. > https://stat.ethz.ch/pipermail/r-help/2007-January/123556.html > > However, labelling panels in lattice with a,b,c etc. in the top > left corner seems extremely difficult and involved, as has been > discussed previously e.g. > http://r.789695.n4.nabble.com/Adding-text-labels-to-lattice-plots-with-multiple-panels-td3436700.html > > >Although the lattice strips are very useful for identifying panels,> publishers (in my field, at least) never allow this kind of > labelling. > > Therefore my question is: Could the default plotting functions be > amended to make it easier for users to produce publication-ready > graphics? > > Dan Bebber > > Department of Biosciences University of Exeter > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the > posting guide http://www.R-project.org/posting-guide.html and > provide commented, minimal, self-contained, reproducible code. >- -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax : +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer at krugs.de Skype: RMkrug -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJS58bjAAoJENvXNx4PUvmCfNwIAI7q1fWaF89q39YE4Wih3OEL RBPQ9dZAe9bitFSITfjUMBZ4jYFkyx6NzZKqirjGH2DqxeQy+3OA9gecPoxQO71W mx9G25yV7q0JtWIHlBivI23y+qVUnEYu86mzLVcH5vc9Bbs8dfUOZ8q9H1N+BMSU lha1A0cVZdqrOlM6dp2xHVHiteNA68SYes4oODjasYEoT6ozEQtHMxi5CW9yb5wa vew50j+bw2LxXkHEJ9xvg/8OTwzIS3k2nc3DCpVFqqwK4UgVbtNFu2umI+25ivBJ spkHTUSwi2FHEq1MNfVfxA7uZHEtFdGR+sofBHqs9G77cdYtyCTpPd48LMRMh3g=A6RH -----END PGP SIGNATURE-----
Dear Dan,
Have a look at ggplot2. It allows to define themes. I've create two theme
for our institution: one according our internal styling guide, one according to
the styling guide for Elsevier journal. Applying the Elsevier theme to all plots
in a script requires just adding theme_set(theme_elsevier()) to the script.
Best regards,
Thierry
ir. Thierry Onkelinx
Instituut voor natuur- en bosonderzoek / Research Institute for Nature and
Forest
team Biometrie & Kwaliteitszorg / team Biometrics & Quality Assurance
Kliniekstraat 25
1070 Anderlecht
Belgium
+ 32 2 525 02 51
+ 32 54 43 61 85
Thierry.Onkelinx at inbo.be
www.inbo.be
To call in the statistician after the experiment is done may be no more than
asking him to perform a post-mortem examination: he may be able to say what the
experiment died of.
~ Sir Ronald Aylmer Fisher
The plural of anecdote is not data.
~ Roger Brinner
The combination of some data and an aching desire for an answer does not ensure
that a reasonable answer can be extracted from a given body of data.
~ John Tukey
-----Oorspronkelijk bericht-----
Van: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
Namens Bebber, Dan
Verzonden: dinsdag 28 januari 2014 12:12
Aan: r-help at r-project.org
Onderwerp: [R] Publication-ready figures in R?
I would like to make a plea for "publication-ready" figures from R.
The default figures produced by R (both traditional and lattice graphics) need
to be amended (by users) in many respects to be acceptable by publishers.
I imagine that most R users are producing figures for publication, and it seems
inefficient that so many adjustments need to be made.
Although publishers vary in their requirements, there is a general request for
minimal whitespace, and labelling of figure parts with a, b, c etc. in the top
left corner that should be easy to achieve in R.
For traditional graphics the main issues relate to white space, which could be
reduced by e.g. par(mar =c(3,3,1,1), mgp = c(2,0.5,0), las = 1, tcl = -0.25) as
defaults Labelling parts inside the plot region can be achieved by e.g.
legend("topleft", legend = "A", bty = "n",
x.intersp = 0, y.intersp = 0).
Labelling parts outside the plot region can almost be achieved by e.g.
mtext("A", side = 3, adj = 0), although the label is too far to the
right, rather than being in the top left corner.
For lattice graphics, whitespace can be reduced by adjusting trellis parameters
as has been discussed previously, e.g.
https://stat.ethz.ch/pipermail/r-help/2007-January/123556.html
However, labelling panels in lattice with a,b,c etc. in the top left corner
seems extremely difficult and involved, as has been discussed previously e.g.
http://r.789695.n4.nabble.com/Adding-text-labels-to-lattice-plots-with-multiple-panels-td3436700.html
Although the lattice strips are very useful for identifying panels, publishers
(in my field, at least) never allow this kind of labelling.
Therefore my question is: Could the default plotting functions be amended to
make it easier for users to produce publication-ready graphics?
Dan Bebber
Department of Biosciences
University of Exeter
______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
* * * * * * * * * * * * * D I S C L A I M E R * * * * * * * * * * * * *
Dit bericht en eventuele bijlagen geven enkel de visie van de schrijver weer en
binden het INBO onder geen enkel beding, zolang dit bericht niet bevestigd is
door een geldig ondertekend document.
The views expressed in this message and any annex are purely those of the writer
and may not be regarded as stating an official position of INBO, as long as the
message is not confirmed by a duly signed document.