From: Lothar Botelho-Machado <r-help_at_botelho-machado.de>

Date: Mon 25 Sep 2006 - 21:08:16 GMT

>> Hey R-Comunity,

*>>
*

*>>
*

*>> I'd like to print out an histogram of some experimental data and add a
*

*>> smooth curve of a normal distribution with an ideally generated
*

*>> population having the same mean and standard deviation like the
*

*>> experimental data.
*

*>>
*

*>>
*

*>> The experimental data is set as vector x and its name is set to
*

*>> group.name. I paint the histogram as follows:
*

*>>
*

*>> hist(data, freq=FALSE, col="lightgrey", ylab="Density", xlab=group.name)
*

*>>
*

*>>
*

*>>
*

*>> First I did the normal distribution curve this way:
*

*>>
*

*>> lines(x, dnorm(x, mean=mean(x), sd=sd(x)), type="l", lwd=2)
*

*>>
*

*>> This curve just uses as many values as there are in x. When using small
*

*>> amounts of sample populations the curve looks really shaky.
*

*>>
*

*>>
*

>> I tried this one using a high level plot function as well:

*>>
*

*>> curve(dnorm, n=10000, add=TRUE, xlim=range(x))
*

*>>
*

*>> The advantage is, now I can set an ideal population of 10000 to get the
*

*>> ideal curve really smooth. But the big disadvantage is, I don't know how
*

*>> to add "mean=mean(x), sd=sd(x)" arguments to it? It says that it can't
*

*>> mix high level with low level plot functions when I try to set some kind
*

*>> of parameter like "n=10000" to the low level function, it says that
*

*>> there ain't enough x values.
*

*>>
*

*>> So my question is, how to get a smooth curve placed of dnorm over an
*

*>> histogram of sample data, ideally by using the curve method?
*

*>>
*

*>>
*

*>> TIA,
*

*>> Lothar Rubusch
*

*>>
*

*>> ______________________________________________
*

*>> R-help@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
*

*>> and provide commented, minimal, self-contained, reproducible code.
*

>

>

R-help@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 and provide commented, minimal, self-contained, reproducible code. Received on Tue Sep 26 07:17:21 2006

Date: Mon 25 Sep 2006 - 21:08:16 GMT

**-----BEGIN PGP SIGNED MESSAGE-----
**

Hash: SHA1

Thanks for your help!!

I appreciate, now it works perfectly.

Lothar Rubusch

Duncan Murdoch wrote:

> On 9/25/2006 1:56 PM, Lothar Botelho-Machado wrote:

>> Hey R-Comunity,

> > This is generally the right way to do it, but you likely want to use a > different variable for the first two occurrences of x, e.g. > > x0 <- seq(from=min(x), to=max(x), len=200) > lines(x0, dnorm(x0, mean=mean(x), sd=sd(x)), type="l", lwd=2) > > Duncan Murdoch >

>> I tried this one using a high level plot function as well:

>

>

**-----BEGIN PGP SIGNATURE-----
**

Version: GnuPG v1.4.5 (GNU/Linux)

Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFGEVAHRf7N9c+X7sRAtRoAJ97ft75u1etTac3Daiti1u2mlyRWgCeIAAK
81WfyDGzDdWDm11MwPiDKIA=

=W2m9

**-----END PGP SIGNATURE-----
**

R-help@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 and provide commented, minimal, self-contained, reproducible code. Received on Tue Sep 26 07:17:21 2006

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.1.8, at Mon 25 Sep 2006 - 22:30:08 GMT.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*