Create an Area Plot
Produce a stacked area plot, or add polygons to an existing plot.
## Default S3 method: PlotArea(x, y = NULL, prop = FALSE, add = FALSE, xlab = NULL, ylab = NULL, col = NULL, frame.plot = FALSE, ...) ## S3 method for class 'formula' PlotArea(formula, data, subset, na.action, ...)
x |
numeric vector of x values, or if |
y |
numeric vector of y values, or a matrix containing y values in columns. |
prop |
whether data should be plotted as proportions, so stacked areas equal 1. |
add |
whether polygons should be added to an existing plot. |
xlab |
label for x axis. |
ylab |
label for y axis. |
col |
fill color of polygon(s). The default is a vector of gray colors. |
frame.plot |
a logical indicating whether a box should be drawn around the plot. |
formula |
a |
data |
a data frame (or list) from which the variables in
|
subset |
an optional vector specifying a subset of observations to be used. |
na.action |
a function which indicates what should happen when the data contain |
... |
further arguments are passed to |
Matrix of cumulative sums that was used for plotting.
Arni Magnusson <arnima@hafro.is>
# PlotArea with stapled areas tab <- table( d.pizza$date, d.pizza$driver ) PlotArea(x=as.Date(rownames(tab)), y=tab, xaxt="n", xlab="Date", ylab="Pizzas delivered" ) # add x-axis and some text labels xrng <- pretty(range(as.Date(rownames(tab)))) axis(side=1, at=xrng, labels=xrng) text( x=min(d.pizza$date + .5, na.rm=TRUE), y=cumsum(tab[2,])-2.5, label=levels(d.pizza$driver), adj=c(0,0.5), col=TextContrastColor(gray.colors(7))) # formula PlotArea(Armed.Forces~Year, data=longley) PlotArea(cbind(Armed.Forces,Unemployed)~Year, data=longley) # add=TRUE plot(1940:1970, 500*runif(31), ylim=c(0,500)) PlotArea(Armed.Forces~Year, data=longley, add=TRUE) # matrix PlotArea(WorldPhones) PlotArea(WorldPhones, prop=TRUE, col=rainbow(10)) # table PlotArea(table(d.pizza$weekday)) PlotArea(table(d.pizza$weekday, d.pizza$driver)) # ts/mts PlotArea(austres) PlotArea(Seatbelts[,c("drivers","front","rear")], ylab="Killed or seriously injured") abline(v=1983+1/12, lty=3)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.