Module:ChartPercentage/doc
This module provides a transform for chart renderings that selects columns, computes percentages from numerator/denominator pairs, removes denominator columns, and sets multilingual titles for the remaining columns.
See mw:Extension:Chart/Transforms for more documentation on this transform feature of the Charts system.
See similar module: Module:Chart absolute to relative
Usage
process: Compute percentages and set multilingual titles.
To use as a chart transform:
"transform": {
"module": "ChartPercentRename",
"function": "process",
"args": {
"cols": "pop_2020,pop_total,année",
"numerator_cols": "pop_2020",
"denominator_cols": "pop_total",
"translations": "fr:Population 2020 (%),Année;en:Population 2020 (%),Year"
}
}
To invoke as a utility function from another module:
local ChartPercentRename = require( "Module:ChartPercentRename" )
local tab = mw.ext.data.get( "Some dataset.tab" )
-- Note this may mutate the original tab object
tab = ChartPercentRename.process(tab, {
["cols"] = "pop_2020,pop_total,année",
["numerator_cols"] = "pop_2020",
["denominator_cols"] = "pop_total",
["translations"] = "fr:Population 2020 (%),Année;en:Population 2020 (%),Year"
})
Arguments:
cols: comma-separated list of column names to keep initially, otherwise allnumerator_cols: comma-separated list of numerator column namesdenominator_cols: comma-separated list of corresponding denominator column namestranslations: semicolon-separated list of language blocks in the formatlang:Title1,Title2;lang2:TitleA,TitleB(setsf.title[lang]for each numerator column)
The transform computes each numerator as (numerator / denominator) * 100, rounded to two decimal places, replaces the numerator values, and removes the denominator columns from the dataset.