【发布时间】:2018-01-31 07:33:30
【问题描述】:
我正在尝试在 ggplot2 图表中创建一个图例,其中包含多条线,每条线上都有一个参数和值。由于我将符号作为变量,因此需要使用expression 来完成。为了创建新行,我使用了多个atop 命令,但这会导致最后一行的间距不均匀。请看我下面的例子:
library(ggplot2)
N = 25
a = -5
b = 2
sigma = 1
x = runif(N, 0, 10)
y = a + x * b + rnorm(N, sd = sigma)
df = data.frame(x, y)
ggplot(df, aes(x, y)) +
geom_point() +
geom_label(aes(x = 1, y = max(y) - 2),
label = paste0("atop(atop(",
"textstyle(a == ", a, "),",
"textstyle(b == ", b, ")),",
"textstyle(sigma == ", sigma, "))"
), parse = TRUE
)
ggsave("plotmath_atop.png", width = 6, height = 4, scale = 1)
这给出了以下情节:
如您所见,b=2 和\sigma=1 行之间的间距明显大于a=-5 和b=2 行之间的间距。
有没有办法使用expression 与多个换行符同时仍然保持每行之间的间距均匀?
【问题讨论】:
-
这可能会有所帮助:stackoverflow.com/a/39784690/471093
-
@baptiste 看起来很有希望,我会检查一下。谢谢!