mapPies {rworldmap} | R Documentation |
function to produce pie charts on a map
Description
The function will produce a map with pie charts centred on country centroids (or other chosen points). The size of the circles is determined by the sum of the attribute columns and each section is coloured.
Usage
mapPies(
dF,
nameX = "LON",
nameY = "LAT",
nameZs = c(names(dF)[3], names(dF)[4]),
zColours = c(1:length(nameZs)),
ratio = 1,
addCatLegend = TRUE,
symbolSize = 1,
maxZVal = NA,
xlim = NA,
ylim = NA,
mapRegion = "world",
borderCol = "grey",
oceanCol = NA,
landCol = NA,
add = FALSE,
main = "",
lwd = 0.5,
...
)
Arguments
dF |
data frame or SpatialPolygonsDataFrame |
nameX |
name of column containing the X variable (longitude), not needed if dF is a SpatialPolygonsDataFrame |
nameY |
name of column containing the Y variable (latitude), not needed if dF is a SpatialPolygonsDataFrame |
nameZs |
name of columns containing numeric variables to determine pie sections |
zColours |
colours to apply to the pie section for each attribute column |
ratio |
the ratio of Y to N in the output map, set to 1 as default |
addCatLegend |
whether to add a legend for categories |
symbolSize |
multiplier of default symbol size |
maxZVal |
the attribute value corresponding to the maximum symbol size, this can be used to set the scaling the same between multiple plots |
xlim |
map extents c(west,east), can be overidden by mapRegion |
ylim |
map extents c(south,north), can be overidden by mapRegion |
mapRegion |
a country name from getMap()[['NAME']] or 'world','africa','oceania','eurasia','uk' sets map extents, overrides xlim,ylim |
borderCol |
the colour for country borders |
oceanCol |
a colour for the ocean |
landCol |
a colour to fill countries |
add |
whether to add the symbols to an existing map, TRUE/FALSE |
main |
title for the map |
lwd |
line width for country borders |
... |
any extra arguments to points() |
Details
Beware of creating plots that are difficult for the reader to interpret. More than 3 or 4 categories may be too many.
Value
currently doesn't return anything
Author(s)
andy south
Examples
#getting example data
dF <- getMap()@data
## these examples repeat the same column in 'nameZs'
## to show that equal sized pies are created
#mapPies( dF,nameX="LON", nameY="LAT",nameZs=c('AREA','AREA') )
#mapPies( dF,nameX="LON", nameY="LAT",nameZs=c('AREA','AREA')
# , mapRegion='africa' )
mapPies( dF,nameX="LON", nameY="LAT"
, nameZs=c('POP_EST','POP_EST','POP_EST','POP_EST'),mapRegion='africa' )