考虑以下示例:

labs <- c("AT~frac(T,C)~G","GGAA","TTAA","AAAA")
plot(c(1:4), c(1:4), axes=F, xlab="",ylab="", par(mar=c(8,3,2,1)))
axis(1, at=c(1:4), labels=labs, las=2)

生成此:

r - 在绘图刻度标记标签中组合paste()和expression()-LMLPHP

我的意图是拥有这样的东西:

r - 在绘图刻度标记标签中组合paste()和expression()-LMLPHP

我硬编码为:
plot(c(1:4), c(1:4), type="n", axes=F, xlab="",ylab="")
axis(1, at=c(1:4), labels=c(expression(AT~frac(T,C)~G), expression(GGAA), expression(TTAA), expression(AAAA)), las=2)

我得到的最接近答案是this
使expression()如我所愿地工作对我来说真的很令人困惑。我打算使用“表达式字符串”向量从可用数据中动态生成这些x轴刻度标记标签。

最佳答案

你近了! frac()是您需要调用的函数。它可以与字符串一起用作参数。这个样本

labs <- expression(paste("AT"~frac("T","C")~"G",sep=""),"GGAA","TTAA","AAAA")
plot(c(1:4), c(1:4), axes=F, xlab="",ylab="")
axis(1, at=c(1:4), labels=labs, las=2)

生成此图:

r - 在绘图刻度标记标签中组合paste()和expression()-LMLPHP

关于r - 在绘图刻度标记标签中组合paste()和expression(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36031477/

10-09 13:40