[Rd] plot.lm: "Cook's distance" label can overplot point labels
John Maindonald
John.Maindonald at anu.edu.au
Wed Feb 18 22:56:57 CET 2009
Dear John -
The title above the graph is also redundant for the first of the
plots; do we want to be totally consistent? I am not sure.
It occurs to me that the text "Cook's distance", as well as the
contours, might be in red.
Regards
John.
John Maindonald email: john.maindonald at anu.edu.au
phone : +61 2 (6125)3473 fax : +61 2(6125)5549
Centre for Mathematics & Its Applications, Room 1194,
John Dedman Mathematical Sciences Building (Building 27)
Australian National University, Canberra ACT 0200.
On 18/02/2009, at 12:27 PM, John Fox wrote:
> Dear John,
>
> It occurs to me that the title above the graph, "Residuals vs.
> Leverage," is
> entirely redundant since the x-axis is labelled "Leverage" and the y-
> axis
> "Studentized residuals." Why not use the title above the graph for
> "Cook's
> distance countours"?
>
> Regards,
> John
>
>> -----Original Message-----
>> From: r-devel-bounces at r-project.org [mailto:r-devel-bounces at r-project.org
>> ]
> On
>> Behalf Of John Maindonald
>> Sent: February-17-09 5:54 PM
>> To: r-devel at r-project.org
>> Cc: Martin Maechler
>> Subject: [Rd] plot.lm: "Cook's distance" label can overplot point
>> labels
>>
>> The following code demonstrates an annoyance with plot.lm():
>>
>> library(DAAGxtras)
>> x11(width=3.75, height=4)
>> nihills.lm <- lm(log(time) ~ log(dist) + log(climb), data = nihills)
>> plot(nihills.lm, which=5)
>>
>> OR try the following
>> xy <- data.frame(x=c(3,1:5), y=c(-2, 1:5))
>> plot(lm(y ~ x, data=xy), which=5)
>>
>> The "Cook's distance" text overplots the label for the point with the
>> smallest residual. This is an issue when the size of the plot is
>> much
>> less than the default, and the pointsize is not reduced
>> proportionately.
>>
>>
>> I suggest the following:
>> xx <- hii
>> xx[xx >= 1] <- NA
>> ## Insert new code
>> fracht <- (1.25*par()$cin[2])/par()$pin[2]
>> ylim[1] <- ylim[1] - diff(ylim)*max(0, fracht-0.04)
>> ## End insert new code
>> plot(xx, rsp, xlim = c(0, max(xx, na.rm = TRUE)),
>> ylim = ylim, main = main, xlab = "Leverage",
>> ylab = ylab5, type = "n", ...)
>>
>> Then, about 15 lines further down, replace
>> legend("bottomleft", legend = "Cook's distance",
>> lty = 2, col = 2, bty = "n")
>>
>> by
>> legend("bottomleft", legend = "Cook's distance",
>> lty = 2, col = 2, bty = "n", y.intersp=0.5)
>>
>> If this second change is not made, then one wants fracht <-
>> (1.5*par()
>> $cin[2])/par()$pin[2]
>> I prefer the "Cook's distance" text to be a bit closer to the x-axis,
>> as it separates it more clearly from any point labels.
>>
>> John Maindonald email: john.maindonald at anu.edu.au
>> phone : +61 2 (6125)3473 fax : +61 2(6125)5549
>> Centre for Mathematics & Its Applications, Room 1194,
>> John Dedman Mathematical Sciences Building (Building 27)
>> Australian National University, Canberra ACT 0200.
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>
More information about the R-devel
mailing list