OVERVIEW
Plot a pie chart with default colors, presumably with a relatively small number of values for each variable. By default, colors are selected for the slices, background and grid lines, all of which can be customized. The basic computations of the chart are provided with the standard R functions pie
and chisq.test
and the lessR
function chisq.test
. A minor modification of the original pie
code provides for the hole in the middle of the pie, the default doughnut or ring chart.
DATA
The data may either be a vector from the global environment, the user's workspace, as illustrated in the examples below, or one or more variable's in a data frame, or a complete data frame. The default input data frame is mydata
. Can specify the source data frame name with the data
option. If multiple variables are specified, only the numerical variables in the list of variables are analyzed. The variables in the data frame are referenced directly by their names, that is, no need to invoke the standard R
mechanisms of the mydata$name
notation, the with
function or the attach
function. If the name of the vector in the global environment and of a variable in the input data frame are the same, the vector is analyzed.
The rows
parameter subsets rows (cases) of the input data frame according to a logical expression. Use the standard R operators for logical statements as described in Logic
such as &
for and, |
for or and !
for not, and use the standard R relational operators as described in Comparison
such as ==
for logical equality !=
for not equals, and >
for greater than. See the Examples.
COLORS
Set the default color of the bars by the current color theme according to bar.fill.discrete
argument of the function style
, which includes the default color theme "colors"
that defines a qualitative HCL color scale, or set the bar color with the fill
parameter. These parameters reference a specified vector of color specifications, such as generated by the lessR getColors
function.
Set fill
to a single color or a color palette, of which there are many possibilities. Define a qualitative color palette with "colors"
that provides HCL colors of the same chroma (saturation) and luminance (brightness). Also available are the pre-specified R color palettes "rainbow"
, "terrain"
, and "heat"
. Pre-defined sequential and divergent color ranges are available as implicit calls to getColors
. The full list of pre-defined color ranges (defined in 30 degree increments around the HCL color wheel): "reds"
, "rusts"
, "yellows"
,
"olives"
, "greens"
, "emeralds"
, "turquoises"
, "aquas"
, "blues"
, "purples"
,"violets"
, "magentas"
, and "grays"
.
Defines a sequential color scale with single value of fill
for a pre-defined palette such as "blues"
. Or, manually specify colors. For example, for a two-level by
variable, could set fill
to c("coral3","seagreen3")
, where the specified colors are not pre-defined color ranges.
For the pre-defined color scales can obtain more control over the obtained color palettes with an explicit call to getColors
for the argument to fill
. Here the value of chroma (c
) and luminance (l
) can be explicitly manipulated in conjunction with the specification of a pre-defined color range. Or, create a custom color range for any value of hue (h
). See getColors
for more information.
To change the background color, set the "panel.fill"
argument of the style
function. The hole of the pie defaults to that color, which, of course, can also be specified to a different color.
ANNOTATIONS
Use the add
and related parameters to annotate the plot with text and/or geometric figures. Each object is placed according from one to four corresponding coordinates, the required coordinates to plot that object, as shown in the following table. The values of the coordinates vary from -1 to 1.
Value |
Object |
Required Coordinates |
----------- |
------------------- |
---------------- |
text |
text |
x1, x2 |
"rect" |
rectangle |
x1, y1, x2, y2 |
"line" |
line segment |
x1, y1, x2, y2 |
"arrow" |
arrow |
x1, y1, x2, y2 |
----------- |
------------------- |
---------------- |
The value of add
specifies the object. For a single object, enter a single value. Then specify the value of the needed corresponding coordinates, as specified in the above table. For multiple placements of that object, specify vectors of corresponding coordinates. To annotate multiple objects, specify multiple values for add
as a vector. Then list the corresponding coordinates, for up to each of four coordinates, in the order of the objects listed in add
. See the examples for illustrations.
Can also specify vectors of different properties, such as add.color
. That is, different objects can be different colors, different transparency levels, etc.
STATISTICS
In addition to the pie chart, descriptive and inferential statistics are presented. First, for integer variables such as counts, the frequency table with proportions is displayed. Second, the corresponding chi-square test is also displayed. For real valued variables read from a data frame, the summary statistics such as the mean are reported.
PDF OUTPUT
Because lessR
functions generate their own graphics calls, the standard graphic output functions such as pdf
do not work with the lessR
graphics functions. Instead, to obtain pdf output, use the pdf.file
option, perhaps with the optional width
and height
options. These files are written to the default working directory, which can be explicitly specified with the R setwd
function.
ONLY VARIABLES ARE REFERENCED
The referenced variable in a lessR
function can only be a variable name. This referenced variable must exist in either the referenced data frame, mydata
by default, or in the user's workspace, more formally called the global environment. That is, expressions cannot be directly evaluated. For example:
> PieChart(rnorm(10)) # does NOT work
Instead, do the following:
> Y <- rnorm(10) # create vector Y in user workspace
> PieChart(Y) # directly reference Y