[R] Rotated text on a regression line

Xiaohui Chen chenxh007 at gmail.com
Tue May 27 23:54:44 CEST 2008


Note that the scale of x-axis and y-axis is different in your plot. One 
simple way to avoid this is to keep the data unit in the x direction is 
equal that in the y direction, by setting asp=1 in calling plot function.

X

Dr. Christoph Scherber 写道:
> Dear all,
>
> I stumbled over a problem recently when trying to use srt with text() on a
> windows device.
>
> What I intended to do was to plot a simple regression line, and to rotate
> a piece of text such that the text has the same angle as the regression
> line.
>
> However, the text is always plotted in a slightly wrong angle:
>
> ####
>
> x=1:10  #create arbitrary x and y values
> y=x*2-rnorm(1:10)
>
> plot(x,y,pch=16,xlim=c(0,10))  #create the graph
> abline(lm(y~x))
>
> #calculate the y coordinate of the text:
> yval=predict(lm(y~x),list(x=rep(2,length(x))))[1]
>
> #calculate the slope:
> slope=as.numeric(lm(y~x)[[1]][2])
>
> text(2,yval,"Regression",srt=180/pi*atan(slope),adj=0)
>
> ####
>
> What am I doing wrong here?
>
> Many thanks in advance for any help!
>
> Best wishes
> Christoph
>
> (using R 2.6.1 on Windows XP)
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>



More information about the R-help mailing list