我正在尝试在ggplot2图中创建一个图例,该图包含一个负号作为指数(指数中没有其他字符)。但是,我不能理解plotmath的语法。
看起来下面的方法是可行的:
expr1 <- expression(paste("text", main[sub]^{-}))
ggplot(mpg, aes(x=cty, y=hwy, colour=drv)) + geom_point() +
scale_colour_discrete(labels=c(expr1, "b", "c"))(如果我们说expr1 <- expression(paste("text", main[sub]^{super})),它确实起作用了。在plotmath中是否有用于减号的转义字符或其他字符
发布于 2012-11-30 06:45:13
您几乎肯定需要在减号两边加上引号,因为否则它将被认为是中缀运算符,因此在它之前和之后都需要参数。如果这不能解决问题,则添加一个小测试用例。
转义在plotmath中不起作用。特别是,您不能使用"\n“作为行尾/换行符(如帮助(绘图数学)页面中所述。
这也是成功的:
expr1 <- expression(paste("text", main[sub]^{phantom()-phantom()}))我以前从来没有尝试过在中缀运算符之前和之后使用phantom,但它似乎可以被解释器接受。Plotmath表达式会被解析,并且需要符合R-解析规则。参见?Syntax。正如注释中所述,使用"-"作为单个phantom()的前缀运算符也是成功的,因为减号既可以用作一元减号,也可以用作二进制减号:
expr1 <- expression(paste("text", main[sub]^{-phantom()}))我们也可以使用空字符值作为前缀减号后面的项:{-""}
https://stackoverflow.com/questions/13636096
复制相似问题