Hello everyone, I have a simple histogram of gasoline prices going back a few years that I want to insert a line graph of consumer price index (cpi) over the histogram. I have looked through the "Lattice" book by Deepayan Sarkar but don't see anything there. How might this be done? An example would be wonderful. Current code snippet follows. For example additional field to add as a line graph would be a cpi calculation like "gas_data$regular * (2010_cpi / gas_data$year )". xyplot( regular ~ as.Date(gas_data$dates,"%b %d, %Y") , data = gas_data, type = c("g", "h" )) Thanks, Jim Burke
On Jan 9, 2011, at 8:13 PM, Jim Burke wrote:> Hello everyone, > > I have a simple histogram of gasoline prices going back a few years > that I want to insert a line graph of consumer price index (cpi) > over the histogram. I have looked through the "Lattice" book by > Deepayan Sarkar but don't see anything there. How might this be > done? An example would be wonderful. > > Current code snippet follows. For example additional field to add as > a line graph would be a cpi calculation like "gas_data$regular * > (2010_cpi / gas_data$year )". > > xyplot( regular ~ as.Date(gas_data$dates,"%b %d, %Y") , data = > gas_data, > type = c("g", "h" ))http://finzi.psych.upenn.edu/R/library/latticeExtra/html/doubleYScale.html -- David Winsemius, MD Heritage Laboratories West Hartford, CT
Hi Jim, Some example data would help us. I typically think of a histogram as the frequency of values falling within a certain range (determined by bins). Since they are univariate plots, I'm not sure how you are planning on adding a line graph to that. If you just want bars of the average gasoline price at different years, perhaps something along these lines would work for you: ## Load required packages require(lattice) require(latticeExtra) ## Sample Data dat <- data.frame(year = 1996:2010, x1 = rnorm(15, 3, .2), x2 = rnorm(15, 200, 1)) ## Base xyplot (not a histogram) adding a layer with different y axis xyplot(x1 ~ year, data = dat, type = "h") + as.layer(xyplot(x2 ~ year, data = dat, type = "l", col = "black"), y.same = FALSE) ## See ?xyplot ?as.layer ?hist # for info about histograms HTH, Josh On Sun, Jan 9, 2011 at 5:13 PM, Jim Burke <j.burke at earthlink.net> wrote:> Hello everyone, > > I have a simple histogram of gasoline prices going back a few years that I > want to insert a line graph of consumer price index (cpi) over the > histogram. ?I have looked through the "Lattice" book by Deepayan Sarkar but > don't see anything there. How might this be done? An example would be > wonderful. > > Current code snippet follows. For example additional field to add as a line > graph would be a cpi calculation like "gas_data$regular * (2010_cpi / > gas_data$year )". > > xyplot( regular ~ as.Date(gas_data$dates,"%b %d, %Y") , data = gas_data, > ? ? ? type = c("g", "h" )) > > Thanks, > Jim Burke > > ______________________________________________ > R-help at 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. >-- Joshua Wiley Ph.D. Student, Health Psychology University of California, Los Angeles http://www.joshuawiley.com/
On Sun, Jan 9, 2011 at 8:13 PM, Jim Burke <j.burke at earthlink.net> wrote:> Hello everyone, > > I have a simple histogram of gasoline prices going back a few years that I > want to insert a line graph of consumer price index (cpi) over the > histogram. ?I have looked through the "Lattice" book by Deepayan Sarkar but > don't see anything there. How might this be done? An example would be > wonderful. > > Current code snippet follows. For example additional field to add as a line > graph would be a cpi calculation like "gas_data$regular * (2010_cpi / > gas_data$year )". > > xyplot( regular ~ as.Date(gas_data$dates,"%b %d, %Y") , data = gas_data, > ? ? ? type = c("g", "h" ))xyplot.zoo in the zoo package has facilities for drawing multiple time series using lattice graphics or in different panels. The documentation has many examples. library(zoo) library(lattice) z1 <- zoo(1:6) z2 <- z1^2 z <- cbind(z1, z2) xyplot(z) # different panels xyplot(z, screen = 1) # all on one panel ?xyplot.zoo example(xyplot.zoo) vignette(package = "zoo") # lists available vignettes -- Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com