[R] ggplot2 histograms

ONKELINX, Thierry Thierry.ONKELINX at inbo.be
Tue Nov 30 15:57:45 CET 2010


Dear Sandy,

Have a look at the position argument of geom_histogram.

ggplot(data=dafr, aes(x = d1, fill=d2)) + geom_histogram(binwidth = 1,
position = position_dodge())
ggplot(data=dafr, aes(x = d1, fill=d2)) + geom_histogram(binwidth = 1,
position = position_dodge(width = 0.5), alpha = 0.5)

Best regards,

Thierry

------------------------------------------------------------------------
----
ir. Thierry Onkelinx
Instituut voor natuur- en bosonderzoek
team Biometrie & Kwaliteitszorg
Gaverstraat 4
9500 Geraardsbergen
Belgium

Research Institute for Nature and Forest
team Biometrics & Quality Assurance
Gaverstraat 4
9500 Geraardsbergen
Belgium

tel. + 32 54/436 185
Thierry.Onkelinx op inbo.be
www.inbo.be

To call in the statistician after the experiment is done may be no more
than asking him to perform a post-mortem examination: he may be able to
say what the experiment died of.
~ Sir Ronald Aylmer Fisher

The plural of anecdote is not data.
~ Roger Brinner

The combination of some data and an aching desire for an answer does not
ensure that a reasonable answer can be extracted from a given body of
data.
~ John Tukey
  

> -----Oorspronkelijk bericht-----
> Van: r-help-bounces op r-project.org 
> [mailto:r-help-bounces op r-project.org] Namens Small Sandy (NHS 
> Greater Glasgow & Clyde)
> Verzonden: dinsdag 30 november 2010 15:37
> Aan: r-help op r-project.org
> Onderwerp: [R] ggplot2 histograms
> 
> Hi
> 
> With ggplot2 I can very easily create beautiful histograms 
> but I would like to put two histograms on the same plot. The 
> histograms may be over-lapping.
> When they are overlapping the bars are shown on top of each 
> other (so that the overall height is the sum of the two). Is 
> there any way to get them to display overlapping (with 
> smaller value in front, larger value behind) so that the 
> overall height is equal to the height of the largest value
> 
> The following demonstrates the problem (there is probably a 
> simple way to generate the sequence in d1 but I don't know it 
> and just threw this together quickly)
> d1<-c(1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,7,7,7,8,8,9,6,7,7,
8,8,8,9,9,9,9,10,10,10,10,10,11,11,11,11,12,12,12,13,13,14,15,15,16,16,1
6,17,17,17,17,18,18,18,18,18)
> 
> d2<-c(rep("a",25), rep("b",39))
> dafr<-data.frame(d1,d2)
> 
> library(ggplot)
> qplot(d1, data=dafr, fill=d2, geom='histogram', binwidth = 1)
> 
> Many thanks for any help
> Sandy
> 
> Sandy Small
> Clinical Physicist
> NHS Forth Valley
> and
> NHS Greater Glasgow and Clyde
> 
> 
> **************************************************************
> ******************************************************
> 
> This message may contain confidential information. If 
> yo...{{dropped:24}}
> 
> ______________________________________________
> R-help op 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.
> 



More information about the R-help mailing list