[R] qq plot issue with ab line

Jim Lemon drj|m|emon @end|ng |rom gm@||@com
Fri Feb 28 23:54:33 CET 2020


Hi Ana,
I'll do my best. In the attached image, I have placed two green disks
at (0,0) and (1,1). These points are on a line with intercept 0 and
slope 1 as are all the other points on that line. When you ask for an
abline with two unnamed arguments, the first is the intercept and the
second is the slope. The abline function them draws a line with these
values across the plot. So it has done what you asked. If you specify
xlim=c(0,1) in the initial plot, you will get what you expect, but you
will leave all x values greater than 1.04 off the plot.

Jim

On Sat, Feb 29, 2020 at 8:41 AM Ana Marija <sokovic.anamarija using gmail.com> wrote:
>
> Hi Jim,
>
> I have in my code:
> abline(0,1,col='red')
>
> can you please tell me how to change my code to have it indeed running
> from 0 to 1?
>
> Thanks
> Ana
>
> On Fri, Feb 28, 2020 at 3:34 PM Jim Lemon <drjimlemon using gmail.com> wrote:
> >
> > Hi Ana,
> > Look carefully at that red line. It goes through (0,0) and scoots off
> > the plot at (2.5,2.5). As you have specified that intercept and slope
> > in your code, poor abline is doing the best it can. Do not punish it
> > for doing what you request.
> >
> > Jim
> >
> > On Sat, Feb 29, 2020 at 6:10 AM Ana Marija <sokovic.anamarija using gmail.com> wrote:
> > >
> > > Hello,
> > >
> > > I made the plot in attach with this function:
> > >
> > > qqunif = function(p, BH=T, MAIN = " ", SUB=" ")
> > > {
> > >   nn = length(p)
> > >   xx =  -log10((1:nn)/(nn+1))
> > >   plot( xx,  -sort(log10(p)),
> > >         main = MAIN, sub= SUB, cex.sub=1.3,
> > >         xlab=expression(Expected~~-log[10](italic(p))),
> > >         ylab=expression(Observed~~-log[10](italic(p))),
> > >         cex.lab=1.0,mgp=c(2,1,0))
> > >   abline(0,1,col='red')
> > >   if(BH) ## BH = include Benjamini Hochberg FDR
> > >   {
> > >
> > >     abline(-log10(0.05),1, col='black',lty=1)
> > >     text(0.5,1.9 , "FDR=0.05", col = "gray60",srt=20, cex=1)
> > >     abline(-log10(0.10),1, col='black',lty=1)
> > >     text(0.5, 1.6, "FDR=0.10", col = "gray60",srt=20, cex=1)
> > >     abline(-log10(0.25),1, col='black',lty=1)
> > >     text(0.5, 1.2, "FDR=0.25", col = "gray60",srt=20, cex=1)
> > >     #legend('topleft', c("FDR = 0.05","FDR = 0.10","FDR = 0.25"),
> > >            #col=c('black','black','black'),lty=c(1,1,1), cex=0.8)
> > >     if (BF)
> > >     {
> > >       abline(h=-log10(0.05/nn), col='black') ## bonferroni
> > >     }
> > >   }
> > > }
> > >
> > >
> > > biob272=read.table("/Users/ams/Desktop/biobank272LD.txt")
> > > qqunif(biob272$V2)
> > >
> > >
> > > > head(biob272)
> > >          V1       V2
> > > 1 rs2089177 0.581204
> > > 2 rs4360974 0.418456
> > > 3 rs6502526 0.416670
> > > 4 rs8069906 0.568030
> > > 5 rs9895995 0.266746
> > > 6 rs9905280 0.510032
> > >
> > > But the red, abline doesn't look like it is 1:1 line.
> > >
> > > Can you please advise?
> > >
> > > Thanks
> > > Ana
> > > ______________________________________________
> > > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > > 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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: qqpl.png
Type: image/png
Size: 95436 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20200229/f6c553f8/attachment.png>


More information about the R-help mailing list