[R] box-and-whisker plots based on summary not data
David Winsemius
dwinsemius at comcast.net
Mon Dec 20 15:20:19 CET 2010
On Dec 20, 2010, at 8:33 AM, Matthew Vernon wrote:
> Matthew Vernon <M.C.Vernon at warwick.ac.uk> writes:
>
>> Is it possible to produce box-and-whisker plots given that I have the
>> median, interquartile and 5/95th centile values, but not the data
>> from
>> which they come?
Please note that the whiskers of the default BWP are NOT at the 5th
and 95th percentiles although I would have guessed that they were too
before I looked a closely at the code and the help pages. They are at
the most extreme data points which do not exceed 1.5 times the box
values which in turn are at "versions of the first and third quartiles".
(So , no, you cannot get what boxplot would have given unless you
have the IQR values and all of the data outside those values. You can,
of course, make up your own approach and use the boxplot machinery for
plotting .... as long as you inform your audience what you are
plotting.)
>
> The answer, which came from Steve Ellison (thanks!) is to note that
> "stats" is the only bit of the "z" argument to bxp that has to be
> present, so given a data file with columns year,mean,median,centiles,
> something like this works:
>
> # transform data so the rows are the various centiles in order
> # there's probably a more elegant approach!
> bsr <- matrix(allobs[,c(4,5,3,6,7)],nrow=5,byrow=TRUE)
> # column 1 is the year, which is our factor
> bsbox <- list( stats=bsr,names=allobs$V1)
> bxp(bsbox,xlab="Year",ylab="Number of cattle per batch")
>
> I thought I'd follow-up so the answer to my question will be in the
> archives.
>
> Thanks,
>
> Matthew
>
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list