An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20130222/e86b40c6/attachment.pl>
Help xyplot
4 messages · Peter Maclean, Nicole Ford, Duncan Mackay
An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20130223/6fa82150/attachment.pl>
An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20130223/e970997f/attachment.pl>
Hi Peter
Try the 2 examples below - it may give you some ideas
useOuterStrips(strip =
strip.custom(factor.levels = paste("Year", c(2010:2012)),
par.strip.text = list(cex = 0.75)),
strip.left =
strip.custom(factor.levels = paste("Lat.",
rep(c(3,2) ,each = 2), "? S, Long.", rep(5:4, 2), "? W"),
par.strip.text = list(cex = 0.75)),
xyplot(prec~month|year*paste(lat,lon), data=ndata,
as.table = T,
scales = list(x = list(alternating = FALSE,
relation = "same",
rot = 60),
y = list(alternating = FALSE,
relation = "same",
rot = 0)
),
ylim=c(min, max),
type = c("b"),
col = 1
) # xyplot **
) ## useOuterStrips
useOuterStrips(strip =
strip.custom(factor.levels = paste("Year", c(2010:2012)),
par.strip.text = list(cex = 0.75)),
strip.left = FALSE,
xyplot(prec~month|year*paste(lat,lon), data=ndata,
as.table = T,
scales = list(x = list(alternating = FALSE,
relation = "same",
rot = 60),
y = list(alternating = FALSE,
relation = "same",
rot = 0)
),
ylim=c(min, max),
col = 1,
panel = function(x,y ,...){
pnl = panel.number()
if (pnl %in% c(1:6))
panel.xyplot(x,y, type = "b",...) else panel.xyplot(x,y, type = "l",...)
grid.text(label =
paste("Lat.", rep(c(3,2) ,each = 6)[pnl], "? S,
Long.", rep(rep(5:4, 3),2)[pnl], "? W"),
x = unit(.1, "npc"),
y = unit(.8, "npc"),
hjust = NULL, vjust = NULL, rot = 0,
just = "left", default.units = "npc",
gp = gpar(cex = 0.8) )
}
) # xyplot **
)
If you want to have selected? points aggregate first
For sampling you would have to sample that first
and then use abs()[5] to get the five nearest
Not sure what you mean exactly and without a
sample of the 5000 cannot help further
HTH
Regards
Duncan
Duncan Mackay
Department of Agronomy and Soil Science
University of New England
Armidale NSW 2351
Email: home: mackay at northnet.com.au
At 09:15 23/02/2013, you wrote:
Hi Mackay and anybody
(a) Is it possible to select randomly (let say five grids) and plot?
(b) Is it possible to plot five nearest grid in one figure?
The original question and improved codes:
#I am ploting gridded time series data. I would like the actual lat
#and lon value appear on the graph-if possible inside the graph as
#numbers. If there is also more elegant ways to plot the graphs I
#>will appreciate more suggestions.
#################################
library(ggplot2)
library(lattice)
month <- c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
"Aug", "Sep", "Oct", "Nov", "Dec")
month <- factor(month, levels = month.abb)
data <- as.data.frame(expand.grid(lon=seq(4,5, 1), lat=seq(-3,-2,1),
year=seq(2010, 2012,1), month=month))
n=nrow(data)
data$prec <- rgamma(n, 2, 0.25)
data$year <- factor(data$year)
data$lon <- factor(data$lon)
data$lat <- factor(data$lat)
ndata <- data[order(data$lon, data$lat),]
fix(ndata)
max <- max(ndata$prec, na.rm=TRUE)
min <- min(ndata$prec, na.rm=TRUE)
#Plot the graph and save as pdf by Mackay suggestion
pdf("H:/file.pdf")
library(latticeExtra)
useOuterStrips(
xyplot(prec~month|year*paste(lat,lon), data=ndata,
as.table = T,
type = c("l", "l","p"), ylim=c(min, max),
layout=c(1,4)) )
dev.off()#The actual data have more than 5
thousand data points, Just want to plot a few
#selected randomly. Also, if I can put 5 data
points (nearest grids) in one graph
#will be more helpful.
Peter Maclean
Department of Economics
UDSM
[[alternative HTML version deleted]]
______________________________________________ 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.