R:geom_vline标签上标

R:geom_vline标签上标,r,ggplot2,labels,R,Ggplot2,Labels,标题说明了一切:我想在ggplot的垂直线标签上使用上标。 下面是一个不太漂亮的例子: df <- data.frame(x = c(1:10),y = c(2,2,3,4,5,5,6,7,5,4)) ggplot(data=df, aes(x,y, group=1)) + geom_line() + scale_x_reverse() + geom_vline(xintercept=3) + geom_text(aes(x=3, label=paste("3400","

标题说明了一切:我想在ggplot的垂直线标签上使用上标。 下面是一个不太漂亮的例子:

df <- data.frame(x = c(1:10),y = c(2,2,3,4,5,5,6,7,5,4))

ggplot(data=df, aes(x,y, group=1)) +
  geom_line() +
  scale_x_reverse() +
  geom_vline(xintercept=3) +
  geom_text(aes(x=3, label=paste("3400","cm","^-1", sep=""), y=5), angle=90, vjust = 1.2)

df你太接近了!只需在
geom_text
中设置
parse=TRUE
,并使用
?plotmath
语法即可

df <- data.frame(x = c(1:10),y = c(2,2,3,4,5,5,6,7,5,4))

library(ggplot2)
ggplot(data=df, aes(x,y, group=1)) +
  geom_line() +
  scale_x_reverse() +
  geom_vline(xintercept=3) +
  #geom_text(data = data.frame(x = 3, y = 5), label = paste("paste(3400, cm)","^-1", sep=""), 
  #  angle=90, parse = TRUE, vjust = 1.2) + 
  annotate("text", x = 3, y = 5, angle = 90, label = paste("paste(3400, cm)","^-1", sep=""), 
    vjust = 1.2, parse = TRUE)

df@chriss非常感谢您!