How to obtain multiple lines in a single density plot, with a corrected scale?

Letin picture Letin · Sep 17, 2012 · Viewed 14.4k times · Source

Possible Duplicate:
How to overlay density plots in R?

I have recently started working with microarray datasets and am trying to get my hands on R. I wish to make some plots out of my result data, but however I am stuck at the following.

I have the following data (myData),

cpg samp1 samp2 samp3 
cpg1 0.43 0.32 0.21 
cpg2 0.43 0.22 1.00 
cpg3 0.11 0.99 0.78 
cpg4 0.65 0.32 0.12 
cpg5 0.11 0.43 0.89

And I wish to obtain a density plot for this,

I did the following,

plot (density(MyData$samp1), col="red") 
lines (density(MyData$samp2), col="green") 
lines (density(MyData$samp3), col="blue") 

But doing this does not give me correct plots, because not all sample curves fit within the plot limits. I did try looking for answers, but honestly i am still not able to work this out. Can you help me know how do i set my scale for the above? Or what additional should I do to the above code, so that all the curves are in range?? I have got many samples, so i need a something that could also automatically assign a different colour curve for each of my sample, after scaling it right.

Thanks in advance..

Answer

user1317221_G picture user1317221_G · Sep 17, 2012

you will need to change the axis limits of the original plot to fit everything in. This is not done for you automatically when adding different lines:

e.g.

plot (density(MyData$samp1), col="red",ylim=c(0,3.5),xlim=c(-1,2)) 
lines (density(MyData$samp2), col="green") 
lines (density(MyData$samp3), col="blue")

enter image description here