x <- array(list(95
,95
,81
,92
,87
,90
,95
,91
,91
,97
,84
,87
,92
,92
,89
,104
,84
,85
,79
,84
,81
,78
,69
,80
,79
,84
,75
,86
,84
,84
,92
,85
,91
,78
,89
,87
,86
,83
,90
,71
,86
,72
,90
,91
,96
,93
,90
,88
,80
,77
,73
,90
,88
,86
,77
,88
,67
,86
,88
,89
,89
,102
,94
,88
,103
,88
,86
,84
,77
,97
,87
,89
,81
,88
,104
,88
,93
,89
,82
,101
,107
,82
,88
,96
,100
,113
,111
,91
,95
,84
,111
,99
,83
,102
,85
,82
,105
,105
,105
,92
,105
,100
,100
,96
,111
,82
,88
,90
,91
,93
,87
,71
,93
,90
,71
,69
,67
,89
,83
,84
,82
,83
,84
,105
,93
,96
,71
,69
,67
,91
,86
,90
,105
,90
,83
,82
,87
,78
,86
,92
,100
,72
,75
,67
,98
,89
,94
,80
,88
,89
,84
,87
,89
,109
,113
,111
,80
,102
,88
,112
,101
,94
,86
,87
,111
,112
,105
,111
,90
,101
,105
,96
,79
,97
,84
,86
,83
,94
,95
,105
,112
,104
,69
,81
,79
,80
,105
,86
,87
,77
,81
,67
,105
,92
,92
,112
,95
,102
,91
,97
,90
,92
,87
,98
,72
,94
,94
,100
,105
,101
,103
,94
,96
,89
,88
,94
,86
,105
,105
,112
,113
,105
,71
,69
,84
,73
,69
,72
,99
,100
,96
,85
,113
,94
,80
,88
,107
,88
,104
,103
,95
,94
,95
,86
,91
,73
,92
,103
,110
,96
,95
,84
,71
,69
,67
,88
,86
,73
,98
,108
,84
,108
,83
,79
,103
,102
,91
,81
,94
,92
,96
,113
,107
,112
,113
,111
,95
,93
,89
,92
,105
,110
,103
,88
,98
,95
,90
,95
,94
,92
,84
,79
,81
,73
,91
,86
,86
,87
,85
,98
,82
,86
,90
,97
,97
,97
,92
,103
,106
,112
,102
,106)
,dim=c(3
,104)
,dimnames=list(c('WJ10AVA'
,'WJ10ARD'
,'WJ10AMA')
,1:104))
 y <- array(NA,dim=c(3,104),dimnames=list(c('WJ10AVA','WJ10ARD','WJ10AMA'),1:104))
 for (i in 1:dim(x)[1])
 {
 	for (j in 1:dim(x)[2])
 	{
 		y[i,j] <- as.numeric(x[i,j])
 	}
 }
par3 = '0'
par2 = 'FALSE'
par1 = '3'
ylab = 'Test Scores'
xlab = 'CARE Variable Names'
main = 'CARE DATA'
par1 <- as.numeric(par1) #colour
par2<- as.logical(par2) # Notches ?
par3<-as.numeric(par3) # % trim
if(par3>45){par3<-45;warning('trim limited to 45%')}
if(par3<0){par3<-0;warning('negative trim makes no sense. Trim is zero.')}
lotrm<-as.integer(length(y[1,])*par3/100)+1
hitrm<-as.integer(length(y[1,])*(100-par3)/100)
y1<-array(dim=c(dim(y)[1], hitrm-lotrm+1), dimnames=list(dimnames(y)[[1]], 1:(hitrm-lotrm+1) ))
for(i in 1:dim(y)[1]){
tmp<-order(y[i,])
y1[i,]<- y[i, tmp[lotrm:hitrm] ]
}
postscript(file="/var/wessaorg/rcomp/tmp/1dsvn1350347323.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
pairs(t(y))
dev.off()
y<-y1
z <- as.data.frame(t(y))
postscript(file="/var/wessaorg/rcomp/tmp/2op8m1350347323.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
(r<-boxplot(z ,xlab=xlab,ylab=ylab,main=main,notch=par2,col=par1))
dev.off()

#Note: the /var/wessaorg/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab
load(file="/var/wessaorg/rcomp/createtable")

a<-table.start()
a<-table.row.start(a)
a<-table.element(a,hyperlink('http://www.xycoon.com/overview.htm','Boxplot statistics','Boxplot overview'),6,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Variable',1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/lower_whisker.htm','lower whisker','definition of lower whisker'),1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/lower_hinge.htm','lower hinge','definition of lower hinge'),1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/central_tendency.htm','median','definitions about measures of central tendency'),1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/upper_hinge.htm','upper hinge','definition of upper hinge'),1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/upper_whisker.htm','upper whisker','definition of upper whisker'),1,TRUE)
a<-table.row.end(a)
for (i in 1:length(y[,1]))
{
a<-table.row.start(a)
a<-table.element(a,dimnames(t(x))[[2]][i],1,TRUE)
for (j in 1:5)
{
a<-table.element(a,round(r$stats[j,i], digits=2))
}
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file="/var/wessaorg/rcomp/tmp/3ki0z1350347323.tab") 
if (par2){
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Boxplot Notches',4,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Variable',1,TRUE)
a<-table.element(a,'lower bound',1,TRUE)
a<-table.element(a,'median',1,TRUE)
a<-table.element(a,'upper bound',1,TRUE)
a<-table.row.end(a)
for (i in 1:length(y[,1]))
{
a<-table.row.start(a)
a<-table.element(a,dimnames(t(x))[[2]][i],1,TRUE)
a<-table.element(a,round(r$conf[1,i], digits=2))
a<-table.element(a, round(r$stats[3,i], digits=2))
a<-table.element(a,round(r$conf[2,i], digits=2))
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file="/var/wessaorg/rcomp/tmp/43vo11350347323.tab") 
}
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Boxplot Means',4,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Variable',1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/trimmed_mean.htm','trimmed mean','definition of trimmed mean'),1,TRUE)
a<-table.element(a,hyperlink('http://www.xycoon.com/unbiased1.htm','unbiased SD','definition of unbiased SD'),1,TRUE)
a<-table.row.end(a)
for (i in 1:length(y[,1]))
{
a<-table.row.start(a)
a<-table.element(a,dimnames(t(x))[[2]][i],1,TRUE)
a<-table.element(a,round(mean(z[i], trim=par3/100, na.rm=TRUE), digits=2))
a<-table.element(a,round(sd(z[i], na.rm=TRUE), digits=2))
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file="/var/wessaorg/rcomp/tmp/589yy1350347323.tab") 

try(system("convert tmp/1dsvn1350347323.ps tmp/1dsvn1350347323.png",intern=TRUE))
try(system("convert tmp/2op8m1350347323.ps tmp/2op8m1350347323.png",intern=TRUE))

