[R] How to fine control bar plot width?
Fabrice Tourre
fabrice.ciup at gmail.com
Sun Nov 2 06:21:28 CET 2014
Dear expert,
I want to combine 4 figures in the same plot. Each bar plot is related
to the image() plot. I want to bar width is extractly the same width
as grid width in the image() plot. The up-barplot and the
left-barplot. I have pasted my code to follow. How can I modify for
this purpose? Thank you very much in advance.
#######################My example code###########################
datMat <- matrix(rep(1,100),nrow=10)
op=par(oma=c(1,1,1,1),mar=c(1,1,1,1),lwd = 0.2,cex=.5)
nf <- layout(matrix(c(0,1,0,2,3,4),2,3,byrow=TRUE), widths=c(1,6,1),
heights=c(1,3), respect=TRUE)
par(mar=c(3,0.5,3,0),mgp=c(0,1,-2.2))
barplot(seq(1,10),width=1,xlim=c(0,ncol(datMat)),xlab="",
space=0,col="blue",border = "white" )
box("inner", lty="dotted", col="green")
box("outer", lty="solid", col="green")
par(mar=c(0,0,0,0),mgp=c(0,1,-1))
barplot(-seq(1,10),ylim=c(0,nrow(datMat)),width=1.025,horiz=TRUE,,axes
= T,space=0,col="blue", border = "white" )
par(mar=c(1,0,0,0))
x.len=ncol(datMat)
y.len=nrow(datMat)
single.col= 'chartreuse4'
double.col= 'blue4'
triple.col= '#FFFF33'
four.col= '#FF7F00'
five.col= '#E41A1C'
colors=c('grey90',single.col, double.col,triple.col,four.col,five.col);
image(x=1:x.len, y=1:y.len, z=t(datMat), col = colors, breaks=c(-0.5
,0.5 ,1.5 ,2.5 ,3.5 ,4.5 ,5.5),
axes = FALSE, ann=F);
abline(h=seq(0.5,0.5+y.len),col='white',lwd=0.5);
abline(v=seq(0.5,0.5+x.len),col='white',lwd=0.5)
par(mar=c(0,0,0,0),mgp=c(0,1,0))
barplot(seq(1,10),ylim=c(0,nrow(datMat)),width=.5,horiz=TRUE,axes =
FALSE, space=0,col="blue",border ="white" )
axis(side=1)
######################
sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-apple-darwin13.1.0 (64-bit)
locale:
[1] C/UTF-8/C/C/C/C
attached base packages:
[1] datasets utils stats graphics grDevices methods base
other attached packages:
[1] xlsx_0.5.7 xlsxjars_0.6.1
[3] rJava_0.9-6 nutshell_2.0
[5] nutshell.audioscrobbler_1.0 nutshell.bbdb_1.0
[7] faraway_1.0.6 MASS_7.3-35
loaded via a namespace (and not attached):
[1] tools_3.1.1
More information about the R-help
mailing list