Текст с математикой в R

#r #text #plot

#r #текст #график

Вопрос:

Мне нужно включить текстовый заголовок на графике в R. Я в основном хочу включить коэффициент регрессии (R ^ 2), что я и сделал с помощью приведенного ниже кода

 text(-8, 2,  bquote(R^2 == .(round((summary(fit1)$r.squared),2))))
  

Но теперь я хотел бы внести несколько изменений. Я бы хотел, чтобы R ^ 2 был выделен курсивом и добавлял другую текстовую информацию.

Я мог бы выделить курсивом R ^ 2 следующим образом

 text(-8, 2,  expression(italic(R^2)))
  

Но есть ли способ сделать это с помощью bquote(), чтобы я мог также включить коэффициент регрессии?

Второй вопрос заключается в том, как я могу также включить другой текст в тот же заголовок.

Например, я также пробовал этот код для построения некоторого текста перед R ^ 2 — но здесь математика вообще не работает

 text(-9, 2, paste("Linear Regression n R^2" , round((summary(fit1)$r.squared),2)))
  

Любая помощь будет оценена.

Спасибо.

Ответ №1:

Мы можем просто обернуть его с italic

 text(-8, 2,  bquote(italic(R^2) == .(round((summary(fit1)$r.squared),2))))
  

и добавить несколько строк

 text(-8, 2,  bquote('Linear Regression'~italic(R^2) == .(round((summary(fit1)$r.squared),2))))
  

Используя воспроизводимый пример

 set.seed(425)
x <- sample(10, 10, replace=TRUE)
y <- sample(20, 10, replace=TRUE)
fit1 <- lm(x~y)
plot(x, y, xlim = c(0,10), ylim = c(0,20))
text(8, 2,  bquote('Linear Regression'~italic(R^2) == .(round((summary(fit1)$r.squared),2)))) 
  

введите описание изображения здесь

Комментарии:

1. Отлично, спасибо! В качестве последнего вопроса — есть ли способ использовать n и поместить R ^ 2 в новую строку?

2. @lily23 Возможно, вам нужно text(8, 3, 'Linear Regression'); text(8, 2, bquote(italic(R^2) == .(round((summary(fit1)$r.squared),2)))) (для примера, который я показал)

3. Спасибо — это сделает работу =)