Повар на расстоянии сюжет, как избавиться от легенды - PullRequest
2 голосов
/ 05 июня 2011

Допустим, этот простой пример:

> numberofdrugs <- rpois(84, 5)
> healthvalue <- rpois(84, 75)
> test <-glm(healthvalue ~ numberofdrugs, family=poisson)
> plot(test, which=5)

Кто-нибудь знает, как избавиться от легенды о красной пунктирной линии, которая говорит о расстоянии повара?

Ответы [ 2 ]

2 голосов
/ 05 июня 2011

Я не знаю, сможете ли вы избавиться от этой линии, но вы можете просто создать этот график вручную.После этого вы можете добавить все легенды, которые вы хотите или не хотите.Например, взгляните на пакет boot.

В вашем случае это сделает ваш сюжет

plot(y = glm.diag(test)$rp, x = glm.diag(test)$h)

Насколько я знаю, есть и функция glm.diag.plots.Посмотрите на их справочные страницы.

0 голосов
/ 06 июня 2011

Существует параметр cook.levels, который контролирует, сколько и для каких значений создаются пунктирные линии. Его длина также используется в нормативе if, который ведет к ветви, которая производит легенду. Поэтому, если вы установите значение NULL, вы избавитесь от пунктирных линий и легенды. Вы также можете удалить сплошную красную линию, установив add.smooth=FALSE.

plot(test, which=5, cook.levels=NULL, add.smooth=FALSE)

Редактировать

После предложений в вопросе прокомментируйте, что только легенда должна быть удалена, кажется, что редактирование копии plot.lm - это путь. Этот вопрос дает эффективный, хотя и немного эзотерический, способ сделать это, используя body:

plot.lm2 <- plot.lm
body(plot.lm2)[[27]][[3]][[9]][[4]][[8]][[3]][[6]]<-NULL
plot.lm2(test, which=5)
...