[R] dotplot/Dotplot: connecting points within factor level across time

Benjamin Tyner btyner at gmail.com
Tue Sep 19 03:38:02 CEST 2006


Many thanks to Gabor and Deepayan. In case of conditioning, one can also 
do this inside the panel function, using subscripts as necessary. The 
segplot package is also a nice touch.

Ben

Gabor Grothendieck wrote:

> Try this:
>
> print(p)
> trellis.focus("panel", 1, 1)
> with(z, panel.segments(x, as.numeric(y), x+d, as.numeric(y)))
> trellis.unfocus()
>
> On 9/16/06, Benjamin Tyner <btyner at gmail.com> wrote:
>
>> For each level of the factor in dotplot, I have time points I'd like to
>> connect with a line. In the example below, 'x' represents a starting
>> time and 'd' a duration, and I wish to connect 'x' to 'x+d'. Ordinarily
>> I would use Dotplot from hmisc for this, but I have not been able to
>> find a time class that Dotplot will allow. I can get lattice dotplot to
>> put the points up, but I've not figured out how to connect them. Any
>> suggestions?
>>
>> require(lattice)
>> z<-data.frame(y=factor(letters),
>>              x=structure(1:26,class=c("POSIXt","POSIXct"),tzone=""),
>>              d=runif(26))
>>
>> # this puts the points, but does not connect them
>> p<-dotplot(y~x+I(x+d),
>>           data=z,
>>           scales=list(x=list(format="%M:%S"))
>>           )
>>
>> zh<-z
>> zh$x<-as.numeric(zh$x)
>> require(hmisc)
>> # this connects them, but at the expense of the time info
>> ph<-Dotplot(y~Cbind(x,x,x+d),
>>            data=zh,
>>            pch=" ")
>>
>>
>>
>> Thanks,
>> Ben
>>
>> ______________________________________________
>> R-help at stat.math.ethz.ch 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