# [R] barplot beside=TRUE - values differ on scales

S Ellison S.Ellison at LGCGroup.com
Wed Oct 12 18:36:27 CEST 2016

```I have suspect that the most common answer to this will be 'don't', for all the reasons statisticians don't like mixing vertical scales on the same plot. See http://www.perceptualedge.com/articles/visual_business_intelligence/dual-scaled_axes.pdf for one article on that topic.

But if you must, is there any reason you can't divide the first row by (say) 1000, barplot normally with axes=false, and then put an explicit axis up each side with something like
axis(2, at=seq(0,3, 0.5), labels= seq(0,2500,500)) ) #first row axis, left column
axis(4)

S Ellison

> -----Original Message-----
> From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of Adrian
> Johnson
> Sent: 12 October 2016 17:21
> To: r-help
> Subject: [R] barplot beside=TRUE - values differ on scales
>
> Dear group,
> I have been struggling to barplot two different measurements from one
> subject. These two measures differ in range.  I want to plot row 1 axis on left
> side and row 2 values on right side.
>
> For a given column I want to plot GN and CN next to each other.
>
> my dput code is below
> :
>
> structure(c(112L, 0L, 579L, 1L, 131L, 1L, 2234L, 2L, 2892L, 1L, 528L, 0L, 582L, 2L),
> .Dim = c(2L, 7L), .Dimnames = list(c("GN", "CN"), c("DC5", "DC8", "DC14",
> "DC18", "DC19", "DC20", "DC23"
> )))
>
>
> As you can see:
>    DC5 DC8 DC14 DC18 DC19 DC20 DC23
> GN 112 579  131 2234 2892  528  582
> CN   0   1    1    2    1    0    2
>
> GN values are range from 100 - 3000
> while CN are always -2 or -1 or 0 or 1 or 2
>
> Also I cannot log GN values and plot because a difference in 100 units also
> matters in my experiment.
>
> Any help would be greatly appreciated.
>
> Thanks
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help