amStackedBarChart: HTML widget displaying a stacked bar chart

View source: R/amStackedBarChart.R

amStackedBarChartR Documentation

HTML widget displaying a stacked bar chart

Description

Create a HTML widget displaying a stacked bar chart.

Usage

amStackedBarChart(
  data,
  data2 = NULL,
  category,
  stacks,
  seriesNames = NULL,
  colors = NULL,
  hline = NULL,
  yLimits = NULL,
  expandY = 5,
  valueFormatter = "#.",
  chartTitle = NULL,
  theme = NULL,
  animated = TRUE,
  tooltip = NULL,
  threeD = FALSE,
  backgroundColor = NULL,
  cellWidth = NULL,
  columnWidth = NULL,
  xAxis = NULL,
  yAxis = NULL,
  scrollbarX = FALSE,
  scrollbarY = FALSE,
  legend = NULL,
  caption = NULL,
  image = NULL,
  button = NULL,
  cursor = FALSE,
  width = NULL,
  height = NULL,
  export = FALSE,
  chartId = NULL,
  elementId = NULL
)

Arguments

data

a dataframe

data2

NULL or a dataframe used to update the data with the button; its column names must include the column names of data given in series, it must have the same number of rows as data and its rows must be in the same order as those of data

category

name of the column of data to be used on the category axis

stacks

a list of stacks; a stack is a character vector of the form c("series3", "series1", "series2"), and the first element of a stack corresponds to the bottom of the column

seriesNames

names of the series variables (the variables which appear in the stacks), to appear in the legend; NULL to use the variables given in stacks as names, otherwise a named list of the form list(series1 = "SeriesName1", series2 = "SeriesName2", ...) where series1, series2, ... are the column names given in stacks and "SeriesName1", "SeriesName2", ... are the desired names to appear in the legend; these names can also appear in the tooltips: they are substituted to the string {name} in the formatting string passed on to the tooltip

colors

colors of the bars; NULL for automatic colors based on the theme, otherwise a named list of the form list(series1 = Color1, series2 = Color2, ...) where series1, series2, ... are the column names given in stacks

hline

an optional horizontal line to add to the chart; it must be a named list of the form list(value = h, line = settings) where h is the "intercept" and settings is a list of settings created with amLine

yLimits

range of the y-axis, a vector of two values specifying the lower and the upper limits of the y-axis; NULL for default values

expandY

if yLimits = NULL, a percentage of the range of the y-axis used to expand this range

valueFormatter

a number formatting string; it is used to format the values displayed in the cursor tooltips if cursor = TRUE, the labels of the y-axis unless you specify your own formatter in the labels field of the list passed on to the yAxis option, and the values displayed in the tooltips unless you specify your own tooltip text

chartTitle

chart title, it can be NULL or FALSE for no title, a character string, a list of settings created with amText, or a list with two fields: text, a list of settings created with amText, and align, can be "left", "right" or "center"

theme

theme, NULL or one of "dataviz", "material", "kelly", "dark", "moonrisekingdom", "frozen", "spiritedaway", "patterns", "microchart"

animated

Boolean, whether to animate the rendering of the graphic

tooltip

settings of the tooltips; NULL for default, FALSE for no tooltip, otherwise a named list of the form list(series1 = settings1, series2 = settings2, ...) where settings1, settings2, ... are lists created with amTooltip; this can also be a single list of settings that will be applied to each series, or a just a string for the text to display in the tooltip

threeD

logical, whether to render the columns in 3D

backgroundColor

a color for the chart background; a color can be given by the name of a R color, the name of a CSS color, e.g. "rebeccapurple" or "fuchsia", an HEX code like "#ff009a", a RGB code like "rgb(255,100,39)", or a HSL code like "hsl(360,11,255)"

cellWidth

cell width in percent; for a simple bar chart, this is the width of the columns; for a grouped bar chart, this is the width of the clusters of columns; NULL for the default value

columnWidth

column width, a percentage of the cell width; set to 100 for a simple bar chart and use cellWidth to control the width of the columns; for a grouped bar chart, this controls the spacing between the columns within a cluster of columns; NULL for the default value

xAxis

settings of the category axis given as a list, or just a string for the axis title; the list of settings has three possible fields: a field title, a list of settings for the axis title created with amText, a field labels, a list of settings for the axis labels created with amAxisLabels, and a field adjust, a number defining the vertical adjustment of the axis (in pixels)

yAxis

settings of the value axis given as a list, or just a string for the axis title; the list of settings has five possible fields: a field title, a list of settings for the axis title created with amText, a field labels, a list of settings for the axis labels created with amAxisLabels, a field adjust, a number defining the horizontal adjustment of the axis (in pixels), a field gridLines, a list of settings for the grid lines created with amLine and a field breaks to control the axis breaks, an R object created with amAxisBreaks

scrollbarX

logical, whether to add a scrollbar for the category axis

scrollbarY

logical, whether to add a scrollbar for the value axis

legend

either a logical value, whether to display the legend, or a list of settings for the legend created with amLegend

caption

NULL or FALSE for no caption, a formatted text created with amText, or a list with two fields: text, a list created with amText, and align, can be "left", "right" or "center"

image

option to include an image at a corner of the chart; NULL or FALSE for no image, otherwise a named list with four possible fields: the field image (required) is a list created with amImage, the field position can be "topleft", "topright", "bottomleft" or "bottomright", the field hjust defines the horizontal adjustment, and the field vjust defines the vertical adjustment

button

NULL for the default, FALSE for no button, or a list of settings created with amButton; this button is used to replace the current data with data2

cursor

option to add a cursor on the chart; FALSE for no cursor, TRUE for a cursor with default settings for the tooltips, or a list of settings created with amTooltip to set the style of the tooltips, or a list with three possible fields: a field tooltip, a list of tooltip settings created with amTooltip, a field extraTooltipPrecision, an integer, the number of additional decimals to display in the tooltips, and a field modifier, which defines a modifier for the values displayed in the tooltips; a modifier is some JavaScript code given as a string, which performs a modification of a string named text, e.g. modifier = "text = '>>>' + text;"

width

the width of the chart, e.g. "600px" or "80%"; ignored if the chart is displayed in Shiny, in which case the width is given in amChart4Output

height

the height of the chart, e.g. "400px"; ignored if the chart is displayed in Shiny, in which case the height is given in amChart4Output

export

logical, whether to enable the export menu

chartId

a HTML id for the chart

elementId

a HTML id for the container of the chart; ignored if the chart is displayed in Shiny, in which case the id is given by the Shiny id

Examples

library(rAmCharts4)

dat <- data.frame(
  year     = c("2004", "2005", "2006"),
  europe   = c(10, 15, 20),
  asia     = c( 9, 10, 13),
  africa   = c( 5,  6,  8),
  meast    = c( 7,  8, 12),
  namerica = c(12, 15, 19),
  samerica = c(10, 16, 14)
)

dat2 <- data.frame(
  year     = c("2004", "2005", "2006"),
  europe   = c( 7, 12, 16),
  asia     = c( 8, 13, 10),
  africa   = c( 7,  7, 10),
  meast    = c( 8,  6, 14),
  namerica = c(10, 17, 17),
  samerica = c(12, 18, 17)
)

stacks <- list(
  c("europe", "namerica"),
  c("asia", "africa", "meast", "samerica")
)

seriesNames <- list(
  europe = "Europe",
  namerica = "North America",
  asia = "Asia",
  africa = "Africa",
  meast = "Middle East",
  samerica = "South America"
)

amStackedBarChart(
  dat,
  data2 = dat2,
  category = "year",
  stacks = stacks,
  seriesNames = seriesNames,
  yLimits = c(0, 60),
  chartTitle = amText(
    "Stacked bar chart",
    fontFamily = "Trebuchet MS",
    fontSize = 30,
    fontWeight = "bold"
  ),
  xAxis = "Year",
  yAxis = "A quantity...",
  theme = "kelly",
  button = amButton("Update", position = 1),
  height = 450
)

rAmCharts4 documentation built on Sept. 22, 2022, 5:05 p.m.