2016-09-30 3 views
3

мне нужно, чтобы включить текст подписи на графике в R. В основном я хочу, чтобы включить коэффициент регрессии (R^2) - что я сделал с кодом нижеТекст с математикой в ​​R

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)))) 

enter image description here

+0

Отлично, спасибо! Как последний вопрос - есть ли способ использовать \ n и поместить R^2 на новую строку? – lily23

+0

@ lily23 Возможно, вам нужен текст (8, 3, «Линейная регрессия»); текст (8, 2, bquote (курсив (R^2) ==. (Round ((summary (fit1) $ r.squared), 2)))) '(для примера, который я показал) – akrun

+1

Спасибо - выполняю работу =) – lily23

Смежные вопросы