0

I am using AmCharts 5 to format numbers with custom prefixes for large values. I have a method that works well for cubic meters (m³) but doesn't work correctly for cubic meters per hour (m³/h). Here is my method:

public static createNumberFormatter(root: am5.Root, conversions: Record<number, string>, unit?: string) {
    const numberFormatter = am5.NumberFormatter.new(root, {});
    console.log('test sofiane');
    if (conversions) {
        const bigNumberPrefix = Object.entries(conversions).map(([number, suffix]) => ({
            number: Number(number),
            suffix: suffix
        }));
        if (bigNumberPrefix.length > 0) {
            numberFormatter.set('numberFormat', '#.00 a');
            numberFormatter.set('bigNumberPrefixes', bigNumberPrefix);
            return numberFormatter;
        }
    }
    numberFormatter.set('numberFormat', '#.00' + unit);
    return numberFormatter;
}

Here are the two sets of data (bigNumberPrefix values) I am working with:

[
    {
        "number": 1,
        "suffix": "m³"
    },
    {
        "number": 1000,
        "suffix": "km³"
    },
    {
        "number": 1000000,
        "suffix": "Mm³"
    }
]

[
    {
        "number": 1,
        "suffix": "m³"
    },
    {
        "number": 1000,
        "suffix": "km³"
    },
    {
        "number": 1000000,
        "suffix": "Mm³"
    }
]

I see 'm' instead of 'm³/h' when using the number formatter with volume flow rates in y-axes.

I used a custom number formatter method in AmCharts 5 to handle large number prefixes for volume flow rates

1
  • What is a "Volume Flow Rate"? Is it a different series? Custom indicator? A placeholder in a tooltipText? Please consider providing more details.
    – martynasma
    Commented Jul 2 at 6:23

0