[R] probability histogram question
Thomas Lumley
tlumley at u.washington.edu
Fri Aug 20 18:59:41 CEST 2004
On Thu, 19 Aug 2004, Joseph LeBouton wrote:
> Alec,
>
> Thanks for your reply. I guess what I'm getting at is that I to plot
> the histogram such that the HEIGHT of each bar represents the proportion
> of that class in the sample. From your reply I gather that the AREA of
> each bar is currently representing the proportion.
That is a bar plot, not a histogram. The barplot() function draws bar
plots.
-thomas
>
> My current work-around is to not plot the histogram immediately; I set
> it up (with plot=F), divide h$density by 10, then plot h;
>
> x <- runif(100,0,1)
> h <- hist(x, freq=F, plot=F)
> h$density <- h$density/10
> plot(h, freq=F)
>
> while this is up to my normal hacking modus operandi, it's not terribly
> efficient. Is there another way to do that? Or is what I'm trying to
> do a perceptually and/or statistically incorrect way to think about
> histograms?
>
> Thanks again,
>
> jlb
>
> Alec Stephenson wrote:
>
> >
> > Alec Stephenson
> > Department of Statistics
> > Macquarie University
> > NSW 2109, Australia
> >
> >
> >>>>Joseph LeBouton <lebouton at msu.edu> 08/20/04 09:56am >>>
> >
> > Hello, all;
> >
> > I get an unexpected result when trying to plot a probability histogram
> > with R1.9.1 on windows xp:
> >
> > #with the following code:
> >
> >
> >>x <- runif(100,0,1)
> >>hist(x)
> >>hist(x, freq=F)
> >>h <- hist(x, freq=F)
> >>summary(h)
> >
> >
> > # Length Class Mode
> > #breaks 11 -none- numeric
> > #counts 10 -none- numeric
> > #intensities 10 -none- numeric
> > #density 10 -none- numeric
> > #mids 10 -none- numeric
> > #xname 1 -none- character
> > #equidist 1 -none- logical
> >
> > # The help file says that <h$density> holds the values
> > # plotted in the probability histogram. If that's the
> > # case, I'd expect that the sum of h$density for a histogram
> > where freq=F would equal 1.0 ... However:
> >
> >
> >>sum(h$density)
> >
> >
> > #returns the value :
> > #[1] 10
> >
> > I would really like to plot values in the probablility histogram that
> > sum to 1, not 10. Is there a switch in the hist(x) command that I'm
> > missing? Or, is there another function that can do this?
> >
> > The width of each bar is 0.1, so you need
> > sum(h$density) * 0.1
> > or in general
> > sum(h$density * diff(h$breaks))
> >
> > Thanks,
> > Alec
> >
> >
> >
> >
>
> --
> ************************************
> Joseph P. LeBouton
> Forest Ecology PhD Candidate
> Department of Forestry
> Michigan State University
> East Lansing, Michigan 48824
>
> Office phone: 517-355-7744
> email: lebouton at msu.edu
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>
Thomas Lumley Assoc. Professor, Biostatistics
tlumley at u.washington.edu University of Washington, Seattle
More information about the R-help
mailing list