ggplot2:带有文本、下标/上标和计算值的注释

Rin*_*ind 3 annotations r ggplot2

我在这里搜索了一段时间,之前的问题/答案部分回答了我的问题。我正在学习 R,来自 Matlab。正如标题所说,我有一个关于情节注释的问题。在Matlab中,拥有包含各种数据格式的绘图注释是相当简单的,我正在R中寻找类似的东西。我已经发现paste并设法将文本和数字放入一个注释中,并且我还发现(到度...) 是什么parse意思,例如显示 r 平方时。我的问题是,如何将代码片段中的两个注释合并为一个注释而不让 R 对我大喊大叫?我的带有两个注释的解决方案可以满足我的需要,但我只是想知道如何做到这一点......

a <- 30 # some coefficients
b <- 70
r2 <- 0.87
anno1 <- paste("y = ",b,"ln(x) + ",a) # first annotation with a random equation
anno2 <- paste("r^2 == ", r2) # second annotation with a random r squared

Pdata <- data.frame("X" = 1:10, "Y" = 1:10) # some data

ggplot(Pdata,aes(x=Pdata$X,y=Pdata$Y)) +
  geom_point() +
  annotate("text", x=2, y=8, label=anno1, parse=FALSE) +
  annotate("text", x=2, y=7, label=anno2, parse=TRUE)
Run Code Online (Sandbox Code Playgroud)

谢谢大家!

use*_*617 6

我花了一段时间才弄清楚这一点(对于我自己的项目),但这里有一个解决方案:

anno3 <- paste("'y ='~",b,"~'ln(x) +'~",a,"~r^2==~", r2)
Run Code Online (Sandbox Code Playgroud)

使用将其添加到您的绘图中+ annotate("text", x=2, y=6, label=anno3, parse=TRUE)

单引号标识不评估的文本。组合起来,粘贴的结果应该像表达式一样写。