Combining `expression()` with `\n`

As @otsaw said in his answer to your earlier question, plotmath (and therefore expression) doesn't allow linebreaks.
However, as a hack, you can use atop to let ≥80 appears on top of (N=10). But as you will soon see it doesn't match with the other labels:

labs <- c("0-9\n(N=10)","10-29\n(N=10)","30-49\n(N=10)", 
          "50-64\n(N=10)","65-79\n(N=10)", 
          expression(atop(phantom(x) >=80, (N==10))))

enter image description here

So, as a further hack, you can pass the other labels as expressions:

labs <- c(expression(atop(0-9,(N==10))),expression(atop(10-29,(N==10))),
          expression(atop(30-49,(N==10))), expression(atop(50-64,(N==10))),
          expression(atop(65-79,(N==10))), expression(atop(phantom(x) >=80, (N==10))))

enter image description here

But of course you have @otsaw solution (using Unicode) that is considerably less wordy:

labs <- c("0-9\n(N=10)","10-29\n(N=10)","30-49\n(N=10)", 
          "50-64\n(N=10)","65-79\n(N=10)", 
          "\u2265 80\n(N=10)")

enter image description here


Another approach would be to use the recently archived tikzDevice. This creates the plots as tikz which are latex friendly format.

This will allow you to pass any latex expression as a character string to your labels.

It has the added benefit that you can compile the documents with the same preamble as your whole document so that the fonts etc are consistent.

All this can be automated using knitr using opts_chunk$set(dev = 'tikz')