I'd like to superimpose a ksmooth() onto a barplot().

My data is:
> d
2009-06-20 2009-06-21 2009-06-22 2009-06-23 2009-06-24 2009-06-25 2009-06-26 2009-06-27 2009-06-28 2009-06-29 2009-06-30 2009-07-01 2009-07-02 Same Breed (B) 12.64 21.08 13.52 12.51 13.71 9.91 14.24 7.18 11.81 5.92 12.04 17.96 2.99 Different Breed 3.70 3.43 5.43 4.43 3.69 1.83 2.95 2.93 4.44 3.47 9.90 10.63 2.92 2009-07-04 2009-07-05 2009-07-06 2009-07-07 2009-07-08 2009-07-09 2009-07-10 2009-07-11 2009-07-12 2009-07-13 2009-07-14 2009-07-15 2009-07-16 Same Breed (B) 27.81 26.79 24.93 23.39 27.52 28.24 12.60 2.25 1.20 0.51 0.18 1.31 0.40 Different Breed 12.16 4.53 8.51 11.77 5.65 11.67 5.81 0.53 1.26 0.42 1.10 0.20 0.29 2009-07-17 2009-07-18 2009-07-19 2009-07-21 2009-07-22 2009-07-23 2009-07-24 2009-07-25 2009-07-26 2009-07-27 2009-07-28 2009-07-29 2009-10-29 Same Breed (B) 0.24 0.03 0.05 13.34 7.70 9.50 9.12 8.62 10.60 7.46 13.17 15.55 3.17 Different Breed 0.13 0.01 0.05 4.98 2.75 4.38 2.17 3.51 1.97 2.68 1.60 2.47 0.38 2009-10-30 2009-10-31 2009-11-01 2009-11-02 2009-11-03 2009-11-04 2009-11-05 2009-11-06 2009-11-07 2009-11-08 2009-11-09 2009-11-24 2009-11-25 Same Breed (B) 1.39 3.57 3.53 1.30 2.26 3.41 3.44 4.04 1.71 2.16 5.01 4.34 3.58 Different Breed 0.51 0.85 1.49 1.99 6.83 1.91 1.54 1.44 0.60 2.08 1.55 2.13 1.44
                2009-11-26 2009-11-27 2009-11-28 2009-11-29 2009-11-30
Same Breed (B)        2.12       2.34       1.90       4.99       2.11
Different Breed       4.21       1.00       2.28       2.90       1.68

I thought the following might work ok, but the x-axis doesn't quite line up correctly for the lines because of the spacing between the bars. I could set the space to zero, but does anyone have any thoughts on how to maintain the spacing and "stretch" the lines data? barplot(as.matrix(d), beside=FALSE, las=2, col=as.numeric(as.factor(rownames(d)))) lines(ksmooth(1:ncol(d), colSums(d), kernel="normal", bandwidth=bandwidth), type="l", lwd=2, col="blue") lines(ksmooth(1:ncol(d), d[1,], kernel="normal", bandwidth=bandwidth), type="l", lwd=2, col=as.numeric(as.factor(rownames(d)))[1]) lines(ksmooth(1:ncol(d), d[2,], kernel="normal", bandwidth=bandwidth), type="l", lwd=2, col=as.numeric(as.factor(rownames(d)))[2]) legend("topright", c(rownames(d), "Total"), fill=c(as.numeric(as.factor(rownames(d))), "blue"))

Cheers,
Nathan

--
--------------------------------------------------------
Dr. Nathan S. Watson-Haigh
OCE Post Doctoral Fellow
CSIRO Livestock Industries
University Drive
Townsville, QLD 4810
Australia

Tel: +61 (0)7 4753 8548
Fax: +61 (0)7 4753 8600
Web: http://www.csiro.au/people/Nathan.Watson-Haigh.html

______________________________________________
R-help@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.

Reply via email to