Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

getting constant text size while using atop function in r

Below is a much simpler example of a complicated custom function I have written. In the full-length form of this function,

  • "layer1"corresponds to caption entered by the user,
  • "layer2" corresponds to results from a statistical test, and
  • "layer3" corresponds to details about the statistical test carried out.

But when all three layers are included in the caption, it looks something like this-

library(ggplot2)

ggplot(iris, aes(Species, Sepal.Length)) +
  geom_boxplot()  +
  labs(caption = substitute(atop(substitute(
    atop("layer1", "layer2")
  )
  , "layer3")))

Created on 2018-11-09 by the reprex package (v0.2.1)

So I wanted to figure out a way I can keep the text size constant for all three layers. I am actually not sure why the text size automatically changes in this context.

Is there a way I can prevent this from happening?

like image 810
Indrajeet Patil Avatar asked Nov 10 '18 02:11

Indrajeet Patil


1 Answers

I'm a little confused about the "substitute" in the plot, but perhaps the following solves the problem:

ggplot(iris, aes(Species, Sepal.Length)) +
  geom_boxplot()  +
  labs(caption = substitute(atop(
    atop(displaystyle("layer1"), displaystyle("layer2")), "layer3")))

enter image description here

like image 162
Julius Vainora Avatar answered Nov 03 '22 20:11

Julius Vainora