我有一个包含希腊字母的字符向量。

labNames <- c("rho x alpha", "z x rho", "beta x rho")


我想在X轴上看到这些标签,引用对象labNames。结果必须就像我使用了expression(rho x alpha)。键入expression(labNames [1])是错误的,但是我不知道该如何解决。请看下面的例子:

plot(c(2,5,8), 1:3, axes=F, pch=19, xlab="", ylab="")
axis(2, 1:3, labels = c(expression(labNames[1]), expression(labNames[2]), expression(labNames[3])), las=2, tck = FALSE, lty = 0)

最佳答案

您需要正确格式化表达式:

labNames <- c("rho x alpha", "z x rho", "beta x rho")
labNames <- gsub(' ', '~', labNames)


然后您可以使用parse

plot(c(2,5,8), 1:3, axes=F, pch=19, ann = FALSE)
axis(2, 1:3, labels = parse(text = labNames), las=2, tck = FALSE, lty = 0)

08-24 12:09