On 09/23/2013 12:55 PM, David Arnold wrote:
Hi,

I want to compare to barplots with same horizontal axis limits.

x=c(55,56,57,58,59,60,60,60,61,62,63,64,65)
y=c(35,40,45,50,55,60,60,60,65,70,75,80,85)

par(mfrow=c(2,1))
barplot(table(x),xlim=c(35,85))
barplot(table(y),xlim=c(35,85))
par(mfrow=c(1,1))

But the bars disappear.

<http://r.789695.n4.nabble.com/file/n4676717/Rplot.png>

Any suggestions?

Hi David,
The first suggestion is:

 par("usr")
[1] -0.32 13.72 -0.03  3.00

Specifying the x limits as above means that the bars are floating somewhere off to the left of the plot and thus not visible. You are mistaking the labels of the bars for their position. Now, having admonished you like some grumpy old school teacher, I suppose I should do something useful:

barplot(tabulate(x,nbins=85)[35:85])
barplot(tabulate(y,nbins=85)[35:85])

This is an underhanded trick to line up the bars as I think you want them. I suppose you want x labels as well:

barpos<-barplot(tabulate(x,nbins=85)[35:85],names.arg=xylabels)
axis(1,at=barpos[c(6,16,26,36,46)],labels=c(40,50,60,70,80))
barplot(tabulate(y,nbins=85)[35:85],names.arg=xylabels)
axis(1,at=barpos[c(6,16,26,36,46)],labels=c(40,50,60,70,80))

Jim

______________________________________________
R-help@r-project.org 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.

Reply via email to