19

Changing font faces and sizes works well without expression in the labels. Here is the code where I've problem to change the font faces in label expression.

p <- ggplot(data = mtcars, aes(x=wt, y=mpg)) + 
    geom_point() + 
    labs(x="Weight", y=expression(paste("mpg (  ", m^{-2}, ")"))) + 
    theme(axis.title.x = element_text(family="serif", face="bold", 
        size=12, angle=00, hjust=0.54, vjust=0)) + 
    theme(axis.title.y = element_text(family="serif", face="bold", 
        size=12, angle=90, vjust=0.25))

p

Output

Any help would be highly appreciated. Thanks

PatrickT
  • 10,037
  • 9
  • 76
  • 111
MYaseen208
  • 22,666
  • 37
  • 165
  • 309

1 Answers1

26

I do not think it is the presence of expression, although you don't say exactly what it is that you are seeing so it's difficult to be sure. On a Mac you get the xlab in bold-serif font, but the ylab is not bold (although it is in serif). If I use the plotmath bold it succeeds from inside the expression function:

p <- ggplot(data = mtcars, aes(x=wt, y=mpg)) + 
geom_point() + 
    labs(x = "Weight", y = expression(bold(mpg (m^-2) ))) +
    theme(axis.title.y = element_text(family="serif", 
        size = 12, angle = 90, vjust = 0.25)) +
    theme(axis.title.x = element_text(family="serif",
        size = 12, angle = 0, hjust = 0.54, vjust = 0))
p

As always, graphical devices are often OS-variable and you have not offered any hint about yours, so further commentary is inhibited.

(EDIT: If you quote the exponent -2 you can get it bold()-ed as well.)

expression( bold(mpg (m^bold("-2")) ) ) )
IRTFM
  • 258,963
  • 21
  • 364
  • 487