Re: [R] alternate tick labels and tick marks with lattice xyplot
Great, Thanks! This is really helpful! On Thu, Jul 19, 2012 at 12:25 AM, ilai ke...@math.montana.edu wrote: Maybe I'm missing something too but from your example seems like you are looking for xyplot(rnorm(12) ~ 1:12 , type=l, scales=list(x=list(at=seq(2,12,2),labels=c(1, ' ', 3 , ' ' , 5 , ' ' ))), par.settings=list(axis.components=list(bottom=list(tck=c(0,1) See scales in ?xyplot and str(trellis.par.get()) for some settings in lattice HTH On Wed, Jul 18, 2012 at 12:02 PM, Leah Marian lmpr...@gmail.com wrote: Yes, I would be interested in both the ggplot2 and lattice ways of doing this. Unfortunately, I am not interested in creating a panel for each chromosome. Actually, I would like to create a Manhattan plot using xyplot. Thus I would need to alternate tick marks and tick labels. Thanks! On Mon, Jul 16, 2012 at 12:11 PM, John Kane jrkrid...@inbox.com wrote: I have not seen any response yet so I thought I would reply. No idea of how to do this in lattice but an approximation of it can be done in ggplot2. I am trying to learn ggplot2 and it was a handy exercise. I still have not figured out how to get the extra line on the x-axis, hence the lines in the graph body instead Example: ##++### library(ggplot2) data - structure(list(Chromosome = c(1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3), BasePair = c(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4), Pvalue = c(0.819178665755317, 0.462827404495329, 0.44360001408495, 0.871020796708763, 0.404167180880904, 0.115009917411953, 0.51048326632008, 0.292681957129389, 0.839718346949667, 0.586992112919688, 0.29609977430664, 0.873988818377256), indice = 1:12, group = c(Group 1, Group 2, Group 1, Group 1, Group 1, Group 1, Group 2, Group 1, Group 2, Group 1, Group 2, Group 2)), .Names = c(Chromosome, BasePair, Pvalue, indice, group), row.names = c(NA, -12L), class = data.frame) library(ggplot2) p - ggplot(data, aes(indice, -log10(Pvalue))) + geom_line() + opts(legend.position = none) + scale_y_continuous(expression(paste(-log[10], p-value))) + scale_x_continuous(Chromosome, breaks=c(2.5, 6.5 ,10.5), labels=c(1, 2,3)) + geom_segment(aes(x = 4, y = 0.01, xend = 9, yend = 0.01, colour = group)) + opts(title = Results) + facet_grid(. ~ group) p ##===## John Kane Kingston ON Canada -Original Message- From: lmpr...@gmail.com Sent: Fri, 13 Jul 2012 15:33:43 -0400 To: r-help@r-project.org Subject: [R] alternate tick labels and tick marks with lattice xyplot Hi, I would like to use xyplot to create a figure. Unfortunately, I cannot find documentation in xyplot to specify alternating the x-axis tick labels with the x-axis tick marks. I can do this with the regular R plot function as follows. #A small version of my data looks like this data-data.frame(matrix(ncol=3,nrow=12)) data[,1]-rep(c(1,2,3),c(4,4,4)) data[,2]-rep(c(1,2,3,4),3) data[,3]-runif(12,0,1) names(data)-c(Chromosome, BasePair, Pvalue) #using R's plot function, I would place the the chromosome label between the #tick marks as follows: v1-c(4,8) v2-c(2,6,10) data$indice-seq(1:12) plot(data$indice, -log10(data$Pvalue), type=l, xaxt=n, main=Result, xlab=Chromosome, ylab=expression(paste(-log[10], p-value))) axis(1, v1,labels=FALSE ) axis(1, v2, seq(1:3), tick=FALSE, cex.axis=.6) Can this be done with lattice xyplot? -- Leah Preus Biostatistician Roswell Park Cancer Institute [[alternative HTML version deleted]] __ R-help@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. GET FREE SMILEYS FOR YOUR IM EMAIL - Learn more at http://www.inbox.com/smileys Works with AIM®, MSN® Messenger, Yahoo!® Messenger, ICQ®, Google Talk™ and most webmails -- Leah Preus Biostatistician Roswell Park Cancer Institute __ R-help@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. -- Leah Preus Biostatistician Roswell Park Cancer Institute __ R-help@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
Re: [R] alternate tick labels and tick marks with lattice xyplot
Oh, I clearly misunderstood what you were doing there. I don't know anything about Manhattan plots but a quick google for manhattan plot r package turns up a number of items so the type of plot you want may already exist. Sorry to not be of more help. John Kane Kingston ON Canada -Original Message- From: lmpr...@gmail.com Sent: Wed, 18 Jul 2012 14:02:49 -0400 To: jrkrid...@inbox.com Subject: Re: [R] alternate tick labels and tick marks with lattice xyplot Yes, I would be interested in both the ggplot2 and lattice ways of doing this. Unfortunately, I am not interested in creating a panel for each chromosome. Actually, I would like to create a Manhattan plot using xyplot. Thus I would need to alternate tick marks and tick labels. Thanks! On Mon, Jul 16, 2012 at 12:11 PM, John Kane jrkrid...@inbox.com wrote: I have not seen any response yet so I thought I would reply. No idea of how to do this in lattice but an approximation of it can be done in ggplot2. I am trying to learn ggplot2 and it was a handy exercise. I still have not figured out how to get the extra line on the x-axis, hence the lines in the graph body instead Example: ##++### library(ggplot2) data - structure(list(Chromosome = c(1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3), BasePair = c(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4), Pvalue = c(0.819178665755317, 0.462827404495329, 0.44360001408495, 0.871020796708763, 0.404167180880904, 0.115009917411953, 0.51048326632008, 0.292681957129389, 0.839718346949667, 0.586992112919688, 0.29609977430664, 0.873988818377256), indice = 1:12, group = c(Group 1, Group 2, Group 1, Group 1, Group 1, Group 1, Group 2, Group 1, Group 2, Group 1, Group 2, Group 2)), .Names = c(Chromosome, BasePair, Pvalue, indice, group), row.names = c(NA, -12L), class = data.frame) library(ggplot2) p - ggplot(data, aes(indice, -log10(Pvalue))) + geom_line() + opts(legend.position = none) + scale_y_continuous(expression(paste(-log[10], p-value))) + scale_x_continuous(Chromosome, breaks=c(2.5, 6.5 ,10.5), labels=c(1, 2,3)) + geom_segment(aes(x = 4, y = 0.01, xend = 9, yend = 0.01, colour = group)) + opts(title = Results) + facet_grid(. ~ group) p ##===## John Kane Kingston ON Canada -Original Message- From: lmpr...@gmail.com Sent: Fri, 13 Jul 2012 15:33:43 -0400 To: r-help@r-project.org Subject: [R] alternate tick labels and tick marks with lattice xyplot Hi, I would like to use xyplot to create a figure. Unfortunately, I cannot find documentation in xyplot to specify alternating the x-axis tick labels with the x-axis tick marks. I can do this with the regular R plot function as follows. #A small version of my data looks like this data-data.frame(matrix(ncol=3,nrow=12)) data[,1]-rep(c(1,2,3),c(4,4,4)) data[,2]-rep(c(1,2,3,4),3) data[,3]-runif(12,0,1) names(data)-c(Chromosome, BasePair, Pvalue) #using R's plot function, I would place the the chromosome label between the #tick marks as follows: v1-c(4,8) v2-c(2,6,10) data$indice-seq(1:12) plot(data$indice, -log10(data$Pvalue), type=l, xaxt=n, main=Result, xlab=Chromosome, ylab=expression(paste(-log[10], p-value))) axis(1, v1,labels=FALSE ) axis(1, v2, seq(1:3), tick=FALSE, cex.axis=.6) Can this be done with lattice xyplot? -- Leah Preus Biostatistician Roswell Park Cancer Institute [[alternative HTML version deleted]] __ R-help@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. GET FREE SMILEYS FOR YOUR IM EMAIL - Learn more at http://www.inbox.com/smileys Works with AIM®, MSN® Messenger, Yahoo!® Messenger, ICQ®, Google Talk™ and most webmails -- Leah Preus Biostatistician Roswell Park Cancer Institute GET FREE SMILEYS FOR YOUR IM EMAIL - Learn more at http://www.inbox.com/smileys Works with AIM®, MSN® Messenger, Yahoo!® Messenger, ICQ®, Google Talk™ and most webmails __ R-help@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.
Re: [R] alternate tick labels and tick marks with lattice xyplot
Yes, I would be interested in both the ggplot2 and lattice ways of doing this. Unfortunately, I am not interested in creating a panel for each chromosome. Actually, I would like to create a Manhattan plot using xyplot. Thus I would need to alternate tick marks and tick labels. Thanks! On Mon, Jul 16, 2012 at 12:11 PM, John Kane jrkrid...@inbox.com wrote: I have not seen any response yet so I thought I would reply. No idea of how to do this in lattice but an approximation of it can be done in ggplot2. I am trying to learn ggplot2 and it was a handy exercise. I still have not figured out how to get the extra line on the x-axis, hence the lines in the graph body instead Example: ##++### library(ggplot2) data - structure(list(Chromosome = c(1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3), BasePair = c(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4), Pvalue = c(0.819178665755317, 0.462827404495329, 0.44360001408495, 0.871020796708763, 0.404167180880904, 0.115009917411953, 0.51048326632008, 0.292681957129389, 0.839718346949667, 0.586992112919688, 0.29609977430664, 0.873988818377256), indice = 1:12, group = c(Group 1, Group 2, Group 1, Group 1, Group 1, Group 1, Group 2, Group 1, Group 2, Group 1, Group 2, Group 2)), .Names = c(Chromosome, BasePair, Pvalue, indice, group), row.names = c(NA, -12L), class = data.frame) library(ggplot2) p - ggplot(data, aes(indice, -log10(Pvalue))) + geom_line() + opts(legend.position = none) + scale_y_continuous(expression(paste(-log[10], p-value))) + scale_x_continuous(Chromosome, breaks=c(2.5, 6.5 ,10.5), labels=c(1, 2,3)) + geom_segment(aes(x = 4, y = 0.01, xend = 9, yend = 0.01, colour = group)) + opts(title = Results) + facet_grid(. ~ group) p ##===## John Kane Kingston ON Canada -Original Message- From: lmpr...@gmail.com Sent: Fri, 13 Jul 2012 15:33:43 -0400 To: r-help@r-project.org Subject: [R] alternate tick labels and tick marks with lattice xyplot Hi, I would like to use xyplot to create a figure. Unfortunately, I cannot find documentation in xyplot to specify alternating the x-axis tick labels with the x-axis tick marks. I can do this with the regular R plot function as follows. #A small version of my data looks like this data-data.frame(matrix(ncol=3,nrow=12)) data[,1]-rep(c(1,2,3),c(4,4,4)) data[,2]-rep(c(1,2,3,4),3) data[,3]-runif(12,0,1) names(data)-c(Chromosome, BasePair, Pvalue) #using R's plot function, I would place the the chromosome label between the #tick marks as follows: v1-c(4,8) v2-c(2,6,10) data$indice-seq(1:12) plot(data$indice, -log10(data$Pvalue), type=l, xaxt=n, main=Result, xlab=Chromosome, ylab=expression(paste(-log[10], p-value))) axis(1, v1,labels=FALSE ) axis(1, v2, seq(1:3), tick=FALSE, cex.axis=.6) Can this be done with lattice xyplot? -- Leah Preus Biostatistician Roswell Park Cancer Institute [[alternative HTML version deleted]] __ R-help@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. GET FREE SMILEYS FOR YOUR IM EMAIL - Learn more at http://www.inbox.com/smileys Works with AIM®, MSN® Messenger, Yahoo!® Messenger, ICQ®, Google Talk™ and most webmails -- Leah Preus Biostatistician Roswell Park Cancer Institute __ R-help@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.
Re: [R] alternate tick labels and tick marks with lattice xyplot
Maybe I'm missing something too but from your example seems like you are looking for xyplot(rnorm(12) ~ 1:12 , type=l, scales=list(x=list(at=seq(2,12,2),labels=c(1, ' ', 3 , ' ' , 5 , ' ' ))), par.settings=list(axis.components=list(bottom=list(tck=c(0,1) See scales in ?xyplot and str(trellis.par.get()) for some settings in lattice HTH On Wed, Jul 18, 2012 at 12:02 PM, Leah Marian lmpr...@gmail.com wrote: Yes, I would be interested in both the ggplot2 and lattice ways of doing this. Unfortunately, I am not interested in creating a panel for each chromosome. Actually, I would like to create a Manhattan plot using xyplot. Thus I would need to alternate tick marks and tick labels. Thanks! On Mon, Jul 16, 2012 at 12:11 PM, John Kane jrkrid...@inbox.com wrote: I have not seen any response yet so I thought I would reply. No idea of how to do this in lattice but an approximation of it can be done in ggplot2. I am trying to learn ggplot2 and it was a handy exercise. I still have not figured out how to get the extra line on the x-axis, hence the lines in the graph body instead Example: ##++### library(ggplot2) data - structure(list(Chromosome = c(1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3), BasePair = c(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4), Pvalue = c(0.819178665755317, 0.462827404495329, 0.44360001408495, 0.871020796708763, 0.404167180880904, 0.115009917411953, 0.51048326632008, 0.292681957129389, 0.839718346949667, 0.586992112919688, 0.29609977430664, 0.873988818377256), indice = 1:12, group = c(Group 1, Group 2, Group 1, Group 1, Group 1, Group 1, Group 2, Group 1, Group 2, Group 1, Group 2, Group 2)), .Names = c(Chromosome, BasePair, Pvalue, indice, group), row.names = c(NA, -12L), class = data.frame) library(ggplot2) p - ggplot(data, aes(indice, -log10(Pvalue))) + geom_line() + opts(legend.position = none) + scale_y_continuous(expression(paste(-log[10], p-value))) + scale_x_continuous(Chromosome, breaks=c(2.5, 6.5 ,10.5), labels=c(1, 2,3)) + geom_segment(aes(x = 4, y = 0.01, xend = 9, yend = 0.01, colour = group)) + opts(title = Results) + facet_grid(. ~ group) p ##===## John Kane Kingston ON Canada -Original Message- From: lmpr...@gmail.com Sent: Fri, 13 Jul 2012 15:33:43 -0400 To: r-help@r-project.org Subject: [R] alternate tick labels and tick marks with lattice xyplot Hi, I would like to use xyplot to create a figure. Unfortunately, I cannot find documentation in xyplot to specify alternating the x-axis tick labels with the x-axis tick marks. I can do this with the regular R plot function as follows. #A small version of my data looks like this data-data.frame(matrix(ncol=3,nrow=12)) data[,1]-rep(c(1,2,3),c(4,4,4)) data[,2]-rep(c(1,2,3,4),3) data[,3]-runif(12,0,1) names(data)-c(Chromosome, BasePair, Pvalue) #using R's plot function, I would place the the chromosome label between the #tick marks as follows: v1-c(4,8) v2-c(2,6,10) data$indice-seq(1:12) plot(data$indice, -log10(data$Pvalue), type=l, xaxt=n, main=Result, xlab=Chromosome, ylab=expression(paste(-log[10], p-value))) axis(1, v1,labels=FALSE ) axis(1, v2, seq(1:3), tick=FALSE, cex.axis=.6) Can this be done with lattice xyplot? -- Leah Preus Biostatistician Roswell Park Cancer Institute [[alternative HTML version deleted]] __ R-help@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. GET FREE SMILEYS FOR YOUR IM EMAIL - Learn more at http://www.inbox.com/smileys Works with AIM®, MSN® Messenger, Yahoo!® Messenger, ICQ®, Google Talk and most webmails -- Leah Preus Biostatistician Roswell Park Cancer Institute __ R-help@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. [[alternative HTML version deleted]] __ R-help@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.
[R] alternate tick labels and tick marks with lattice xyplot
Hi, I would like to use xyplot to create a figure. Unfortunately, I cannot find documentation in xyplot to specify alternating the x-axis tick labels with the x-axis tick marks. I can do this with the regular R plot function as follows. #A small version of my data looks like this data-data.frame(matrix(ncol=3,nrow=12)) data[,1]-rep(c(1,2,3),c(4,4,4)) data[,2]-rep(c(1,2,3,4),3) data[,3]-runif(12,0,1) names(data)-c(Chromosome, BasePair, Pvalue) #using R's plot function, I would place the the chromosome label between the #tick marks as follows: v1-c(4,8) v2-c(2,6,10) data$indice-seq(1:12) plot(data$indice, -log10(data$Pvalue), type=l, xaxt=n, main=Result, xlab=Chromosome, ylab=expression(paste(-log[10], p-value))) axis(1, v1,labels=FALSE ) axis(1, v2, seq(1:3), tick=FALSE, cex.axis=.6) Can this be done with lattice xyplot? -- Leah Preus Biostatistician Roswell Park Cancer Institute [[alternative HTML version deleted]] __ R-help@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.