
Last chance! 50% off unlimited learning
Sale ends in
Create bar plots for one or two factors scaled by frequency or precentages.
In the case of two factors, the bars can be divided (stacked) or plotted in
parallel (side-by-side). This function is a front end to barplot
in the graphics package.
Barplot(x, by, scale = c("frequency", "percent"), conditional=TRUE,
style = c("divided", "parallel"),
col=if (missing(by)) "gray" else rainbow_hcl(length(levels(by))),
xlab = deparse(substitute(x)), legend.title = deparse(substitute(by)),
ylab = scale, main=NULL, legend.pos = "above", label.bars=FALSE, ...)
Invisibly returns the horizontal coordinates of the centers of the bars.
a factor (or character or logical variable).
optionally, a second factor (or character or logical variable).
either "frequency"
(the default) or "percent"
.
if TRUE
then percentages are computed separately for each value of x
(i.e., conditional percentages of by
within levels of x
);
if FALSE
then total percentages are graphed;
ignored if scale="frequency"
.
for two-factor plots, either "divided"
(the default) or "parallel"
.
if by
is missing, the color for the bars, defaulting to "gray"
;
otherwise colors for the levels of the by
factor in two-factor plots, defaulting to colors
provided by rainbow_hcl
in the colorspace package.
an optional character string providing a label for the horizontal axis.
an optional character string providing a title for the legend.
an optional character string providing a label for the vertical axis.
an optional main title for the plot.
position of the legend, in a form acceptable to the legend
function; the default, "above"
, puts the legend above the plot.
if TRUE
(the default is FALSE
) show values of frequencies or percents in the bars.
arguments to be passed to the barplot
function.
John Fox jfox@mcmaster.ca
with(Mroz, {
Barplot(wc)
Barplot(wc, col="lightblue", label.bars=TRUE)
Barplot(wc, by=hc)
Barplot(wc, by=hc, scale="percent", label.bars=TRUE)
Barplot(wc, by=hc, style="parallel",
scale="percent", legend.pos="center")
})
Run the code above in your browser using DataLab