Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to include subscript in text for plot point labels

Hi I'm new to R so I apologise if this is a very basic question. I'm trying to add text to a plot at point 11 on the x axis and point 900 on the y axis that will read t0= -4.0280 with the 0 as subscript. Where t0 <- -4.0280 To do this I've tried:

text(11,900,paste("t[0]=",t0),cex=0.8) 
# which gives 
't[0]= -4.0280'

text(11,900,expression(paste("t[0]=",t0)),cex=0.8) 
# which gives 
't[0]=t0'

# the closest I've gotten is:    
text(11,900,expression(paste(t[0]==t0)),cex=0.8)

which will use subscript but return t0 instead of my value of -4.0280.

Could anyone show me where Ive gone wrong?

Cheers.

like image 721
JJS Avatar asked Mar 21 '13 06:03

JJS


People also ask

How do I create a subscript in Matplotlib label?

To make subscripts, you have to write the expression inside the dollar sign using the _ and ^ symbols. If you use the _ symbol, the superscript will be under the character. If you use the ^ symbol, the superscript will be over the character.

How do you write a subscript in R plot?

Subscripts and Superscripts To indicate a subscript, use the underscore _ character. To indicate a superscript, use a single caret character ^ . Note: this can be confusing, because the R Markdown language delimits superscripts with two carets.


2 Answers

You can replace expression with substitute. There's no need for the paste. The argument list(t0 = t0) tells substitute to replace the string t0 with the value of the object t0:

plot(1,1)

t0 <- 1.3

text(1, 0.8, substitute(t[0]==t0, list(t0 = t0)), cex = 0.8)

enter image description here

like image 127
Sven Hohenstein Avatar answered Sep 28 '22 14:09

Sven Hohenstein


Slightly shorter than substitute is with bquote:

plot(1,1)
t0 <- -4.0280
text(1, 0.8, bquote("t"[0] ~ "=" ~ .(t0)))

of if you'd like to use paste in there:

text(1, 0.8, (bquote("t"[0]~.(paste0('=',t0)))))

enter image description here

This kind of Q has popped up previously:

Using subscript and variable values at the same time in Axis titles in R

Concatenate strings and expressions in a plot's title

like image 36
Ben Avatar answered Sep 28 '22 14:09

Ben