Я хотел бы сделать аннотацию на моем ggplot с двумя строками, под- и надстрочными индексами и ссылками на объекты.
Я понял, что функция annotate()
вызывает geom_text()
, которая приparse = TRUE
может использовать выражения из plotmath
.
Если это мой ярлык:
q10 = 1.9
a = 3.9
b = -0.05
lab1 = substitute(atop(paste(Q[10], '=', q10), paste(M[O[2]], '=', a, e^(b*T))), list(q10 = q10 = 1.9, a = 3.9, b = -0.05))
Тогда он будет работать с базовым сюжетом:
plot(1, 1, main = lab1)
Но когда я пытаюсь использовать его с ggplot()
, выдается ошибка:
ggplot(diamonds, aes(carat, price, color = cut)) +
geom_point() +
annotate(geom = 'text', x = 4, y = 5000, label = lab1, parse = TRUE, color = 'blue')
Error: Aesthetics must be either length 1 or the same as the data (1): label, colour
Я нашел вопросы, связанные с многострочными аннотациями в ggplot: R ggplot аннотирован поверх, используя три значения и bgoup
и относится к выражениям в ggplot: ggplot2 аннотация с верхними индексами
Но я не могу понятьузнать, как объединить соответствующие ответы, чтобы сделать рабочую аннотацию.Любая помощь от ggplot2
гуру там?