1

在以下示例中(请注意 y 轴标签的差异),我使用一个变量来填充ggplot2. 有趣的是~会产生更大的空间,并且在放大的-.

在此处输入图像描述

library(ggplot2)

#LabelY <- "Miles per Gallon-Car"
LabelY <- parse(text="Miles~per~Gallon-Car")

a <- ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() +
        ggtitle("Fuel Efficiency of 32 Cars") +
        xlab(LabelY) + ylab(LabelY) +
        theme(text=element_text(size=16))
print(a)

我使用 parse 是因为它允许我使用更复杂的示例atop,包括希腊字母。

有没有一种方法可以使用 parse 来导入复杂的字符串,同时还保留所需的“较少展开”的内容外观?

4

1 回答 1

3

看起来用反引号括起来的连字符可以让你保留连字符而不是把它变成破折号。

在这里,我将新的连字符版本的轴标签放在 x 轴上,并将 y 轴保留为原始版本以进行比较。

LabelY <- parse(text="Miles~per~Gallon-Car")
LabelY2 <- parse(text="Miles~per~`Gallon-Car`")

ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() +
    ggtitle("Fuel Efficiency of 32 Cars") +
    xlab(parse(text = LabelY2)) + ylab(LabelY) +
    theme(text=element_text(size=16))

在此处输入图像描述

正如您在评论中指出的那样,您还可以在连字符的术语周围使用大括号和单引号组合来获得相同的效果。

parse(text="Miles~per~{'Gallon-Car'}")

于 2015-12-30T23:41:56.323 回答