pyramid {epicalc}R Documentation

Population pyramid

Description

Create a population pyramid from age and sex

Usage

pyramid (age, sex, binwidth = 5, inputTable = NULL, printTable = FALSE, 
    percent = c("none", "each", "total"), col.gender = NULL, 
    bar.label = "auto", decimal = 1, col = NULL, cex.bar.value = 0.8, 
    cex.axis = 1, main = "auto", cex.main = 1.2, ...)

Arguments

age a numeric variable for age
sex a variable of two levels for sexes, can be numeric but preferrably factor with labelled levels or characters
binwidth bin width of age for each bar
inputTable a table to read in with two columns of sexes and rows of age groups
printTable whether the output table should be displayed on the console
percent whether the lengths of the bars should be calculated from freqencies (default), percentages of each sex or total percentages
col.gender vector reflecting colours of the two gender
bar.label whether the bars would be labelled with the values
decimal number of decimals displayed in the percent output table
col colour(s) of the bars
cex.bar.value character extension factor of the bar labels
cex.axis character extension factor of the axis
main main title
cex.main character extension factor of main title
... graph options for the bars, e.g. col

Details

'pyramid' draws a horizontal bar graph of age by sex.

The parameters of graph (par) options can be applied to 'font.lab' and those of the bars, e.g. 'col' but not of others.

Other lower level graph commands should be only for adding a 'title'.

'bar.label' when set as "auto", will be TRUE when 'percent="each"' or 'percent="total"'

Value

When the variables age and sex are input arguments, the return object includes age group variable and the output table. The argument 'decimal' controls only decimals of the output displayed on the console but not the returned table.

Author(s)

Virasakdi Chongsuvivatwong <cvirasak@medicine.psu.ac.th>

See Also

'barplot', 'levels', 'table'

Examples

data(Oswego)
use(Oswego)
pyramid(age, sex)
pyramid(age, sex, bar.label = TRUE)
pyramid(age, sex, printTable=TRUE)
pyramid(age, sex, percent = "each", printTable=TRUE)
pyramid(age, sex, percent = "total", printTable=TRUE)
pyramid(age, sex, percent = "total", bar.label = FALSE)
pyramid(age, sex, percent = "total", cex.bar.value = .5)

pyramid(age, sex, col="red")
pyramid(age, sex, col=1:16) # Too colorful!
pyramid(age, sex, col.gender = c("pink","lightblue"))
output <- pyramid(age, sex, binwidth = 10, percent="each", decimal=2)
output
tabpct(output$ageGroup, chocolate)

pyramid(inputTable=VADeaths[,1:2], font.lab=4)
pyramid(inputTable=VADeaths[,1:2], font.lab=4, main=NULL)
title("Death rates per 100 in rural Virginia in 1940")
 

[Package epicalc version 2.10.1.1 Index]