Superscript R squared for legend

后端 未结 2 1615
悲哀的现实
悲哀的现实 2021-02-09 13:38

I want to write a R-squared term for my legend but I do not know how. Could someone help me please? My legend syntax is:

legend(2,10, c(\"BW (MPE=3%, R-squared=0         


        
2条回答
  •  生来不讨喜
    2021-02-09 13:45

    This is less complex than using c( as.expression ( bquote... multiple times:

    plot(1:10)
    legend(2, 10, expression("BW (MPE = 3%," ~ R^2 ~ "= 0.77)",
                     "MY (MPE = 5%," ~ R^2 ~ "= 0.80)"), 
            pch=c(2,3))
    

    It is useful to understand that the expression function is really a way to make lists of expressions and that commas are then reserved as separators for that process. This means you cannot have a "naked" comma in something you want to be inside one of the distinct elements. The commas immediately after the %-signs are protected from parsing by the quotes. This could fully plotmath()-ified with:

    plot(1:10)
    legend(2, 10, expression(BW * list(MPE == 3*'%',
                                       R^2 == 0.77),
                             MY * list( MPE == 5*'%',
                                       R^2 == 0.80)
                             ), 
           pch=c(2,3))
    

    That way the only character needing special attention is the '%'-sign which plotmath() uses to delimit its specials.

提交回复
热议问题