# [R] Boxplot BUT with Mean, SD, Max & Min ?

Gabor Grothendieck ggrothendieck at gmail.com
Mon Sep 26 18:51:08 CEST 2011

```On Mon, Sep 26, 2011 at 12:11 PM, Philip Rhoades <phil at pricom.com.au> wrote:
> Gabor,
>
>
> On 2011-09-27 00:35, Gabor Grothendieck wrote:
>>
>> On Mon, Sep 26, 2011 at 9:56 AM, Philip Rhoades <phil at pricom.com.au>
>> wrote:
>>>
>>> People,
>>>
>>> It appears that there is no way of getting Boxplots to plot using Mean,
>>> SD,
>>> Max & Min - is there something else that would do what I want?  I
>>> couldn't
>>> find it . .
>>>
>>
>> Try replacing the stats component of boxplot's output with your
>> desired statistics and then feeding that into the lower level bxp
>> function to do the graphics:
>>
>> bp <- boxplot(Nile, plot = FALSE)
>> bp\$stats <- matrix(c(min(Nile), mean(Nile) + c(-1, 0, 1) * sd(Nile),
>> max(Nile)))
>> bxp(bp)
>
>
> Thanks for that!  What is the syntax when there is more than one set of data
> (ie a two dimensional vector)?  I tried messing around with stuff like:
>
>  mean(Nile[,2] etc
>
> but I get subscript out of range errors  . .
>

Bill's example shows  how to do it with a list of numeric vectors.
Here is another example using the built in anscombe and making use of
my prior code, Bill's and Vining's:

bp <- boxplot(anscombe, plot = FALSE)
bp\$stats <- sapply(anscombe, function(x) c(min(x), mean(x) + c(-1, 0,
1) * sd(x), max(x)))
bxp(bp, outline = FALSE)

--
Statistics & Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com

```