ec.clmn: Data column format

View source: R/util.R

ec.clmnR Documentation

Data column format

Description

Helper function to display/format data column(s) by index or name

Usage

ec.clmn(col = NULL, ..., scale = 1)

Arguments

col

A single column index(number) or column name(quoted string),
or a sprintf string template for multiple indexes.
NULL(default) for charts with single values like tree, pie.
'json' to display tooltip with all available values to choose from.
'log' to write all values in the JS console (F12) for debugging.
Can contain JS function starting with 'function(' (or format '(x) => ').

...

Comma separated column indexes or names, only when col is sprintf. This allows formatting of multiple columns, as for a tooltip.

scale

A positive number, multiplier for numeric columns. When scale is 0, all numeric values are rounded.

Details

This function is useful for attributes like formatter, color, symbolSize, label.
Column indexes are counted in R and start with 1.
Omit col or use index -1 for single values in tree/pie charts, axisLabel.formatter or valueFormatter. See ec.data dendrogram example.
Column indexes are decimals for combo charts with multiple series, see ecr.band example. The whole number part is the serie index, the decimal part is the column index inside.
col as sprintf has the same placeholder %@ for both column indexes or column names.
col as sprintf can contain double quotes, but not single or backquotes.
Template placeholders with formatting:

  • %@ will display column value as-is.

  • %L@ will display a number in locale format, like '12,345.09'.

  • %LR@ rounded number in locale format, like '12,345'.

  • %R@ rounded number, like '12345'.

  • %M@ marker in serie's color.

Value

A JavaScript code string (usually a function) marked as executable, see JS.

Examples

tmp <- data.frame(Species = as.vector(unique(iris$Species)),
                  emoji = c('A','B','C'))
df <- iris |> dplyr::inner_join(tmp)      # add 6th column emoji
df |> dplyr::group_by(Species) |> ec.init(
  series.param= list(label= list(show= TRUE, formatter= ec.clmn('emoji'))),
  tooltip= list(formatter=
    # with sprintf template + multiple column indexes
    ec.clmn('%M@ species <b>%@</b><br>s.len <b>%@</b><br>s.wid <b>%@</b>', 5,1,2))
)


echarty documentation built on Oct. 16, 2023, 1:06 a.m.