rnorouzian
rnorouzian

Reputation: 7517

Boldfacing Plot Legend with words, numbers, and symbols in R

I'm wondering how to boldface the entire phrase: "95% CI: [number 1 , number 2 ]" as a legend in my plot below? (Note: "number 1" and "number 2" are specified in my code below).

Here is my R code which requires a fix:

plot(1:10,ty="n",bty="n")

legend("topleft", legend=bquote(paste(bold("95% CI: [ ", .(round(.4432, 3)), 
", " , .(round(.0034, 3))," ]"))), 
                 bty="n", inset=c(0,.03))

P.S. If I omit the bold() part from the code, the entire phrase shows normally, but I loose the bolding effect.

Upvotes: 1

Views: 2356

Answers (1)

r2evans
r2evans

Reputation: 160447

Two options/workarounds:

  1. You can bold() each literal string individually, but I don't know how to bold the dynamic portions (e.g., .(round(.4432,3))). This would look like:

    plot(1:10,ty="n",bty="n")
    legend("topleft", legend=bquote(paste(bold("95% CI: [ "), .(round(.4432, 3)), 
                                          bold(", ") , .(round(.0034, 3)),
                                          bold(" ]"))), 
           bty="n", inset=c(0,.03))
    

    The numbers are not bold.

  2. With this label/legend, you don't actually need bquote, so you can use the text.font option of legend to bold the whole string:

    plot(1:10,ty="n",bty="n")
    legend("topleft", legend=paste("95% CI: [ ", round(.4432, 3),
                                   ", " , round(.0034, 3),
                                   " ]"),
           bty="n", inset=c(0,.03), text.font=2)
    

    The disadvantage with this is that you are you able to use math symbols.

The text.font is a legend-specific argument for the more-generic font parameter, found in ?par:

 'font' An integer which specifies which font to use for text.  If
      possible, device drivers arrange so that 1 corresponds to
      plain text (the default), 2 to bold face, 3 to italic and 4
      to bold italic.  Also, font 5 is expected to be the symbol
      font, in Adobe symbol encoding.  On some devices font
      families can be selected by 'family' to choose different sets
      of 5 fonts.

Upvotes: 4

Related Questions