Number Format
FusionCharts Suite XT offers multiple options to format numbers on the chart. You can configure number prefixes and suffixes, decimal places, and scale numbers based on a predefined scale.
Round off Decimal Places
To round off the decimals for all the numbers on the chart set the number of decimal places to which all the numbers on the chart will be rounded off to using the decimals attribute. Valid range is from 0 to 10.
Refer to the code below:
{
"chart": {
"decimals": "2"
}
}
The chart will look like as shown below:
Click here to edit the above chart.
You can also round off the decimal places for only the horizontal and vertical div lines. To do so, set the decimal precision of the div lines using the yAxisValueDecimals (horizontal div lines) and xAxisValueDecimals (vertical div lines) attributes respectively.
Note: These settings will only work if the automatic adjustment of horizontal and vertical div lines is disabled.
Refer to the code below:
{
"chart": {
"yAxisValueDecimals": "2",
"xAxisValueDecimals": "3"
}
}
The chart will look like as shown below:
Click here to edit the above chart.
Round off with Trailing Zeroes
Use the following attributes to force trailing zeroes:
Set the
forceDecimalsattribute to1, to add/retain the same number of trailing zeros after the decimal point to all figures on the chart.Set the
forceYAxisValueDecimalsattribute to1, to add/retain the same number of trailing zeros after the decimal point to all Y-axis values on the chart.Set the
forceXAxisValueDecimalsto1, to add/retain the same number of trailing zeros after the decimal point to all X-axis values on the chart.
Refer to the code below:
{
"chart": {
"forceDecimals": "1"
}
}
The chart will look as shown below:
Click here to edit the above chart.
Disable Automatic Formatting of Numbers
FusionCharts XT automatically formats numbers displayed on charts. Use the following attributes to disable automatic number formatting:
Set the
formatNumberattribute to0, to remove the commas in all the numbers on the chart. Note that this attribute will only work if you don't specifically mention theyFormatNumberandxFormatNumberattributes.Set the
yFormatNumberattribute to0, to remove the commas in all the numbers on the Y-axis of the chart. If you don't mention this attribute, the chart will inherit the default value from theformatNumberattribute.Set the
xFormatNumberattribute to0, to remove the commas in all the numbers on the X-axis of the chart. If you don't mention this attribute, the chart will inherit the default value from theformatNumberattribute.Set the
formatNumberScaleattribute to1, to automatically add K (thousands) and M (millions) to a number after truncating and rounding it. Alternatively, set this to0to disallow automatic formatting. Note that this attribute will only work if you don't specifically mention theyFormatNumberScaleandxFormatNumberScaleattributes.Set the
yFormatNumberScaleattribute to1, to automatically add K (thousands) and M (millions) to all the numbers on the Y-axis of the chart. Alternatively, set this to0to disallow automatic formatting. If you don't mention this attribute, the chart will inherit the default value from theformatNumberScaleattribute.Set the
xFormatNumberScaleattribute to1, to automatically add K (thousands) and M (millions) to all the numbers on the X-axis of the chart. Alternatively, set this to0to disallow automatic formatting. If you don't mention this attribute, the chart will inherit the default value from theformatNumberScaleattribute.
Refer to the code below:
{
"chart": {
"formatNumber": "0"
}
}
The chart will look as shown below:
Click here to edit the above chart.
A column 2D chart with automatic number formatting looks like the one given above. The data for the chart is 12523, 14570.230, 17375 and 18235.79. FusionCharts Suite XT automatically formats the number scaling by converting it to K and M.
Customize Thousand and Decimal Separator
You can customize the thousand and decimal separator characters from the default , (comma) and . (dot) respectively. To do so, use the attributes given below:
Specify the character to be used as the decimal separator, using the
decimalSeparatorattribute.Specify the character to be used as the thousand separator, using the
thousandSeparatorattribute.Specify the character to be displayed as decimal separator, while leaving the actual character used for calculations to the default value, using the
inDecimalSeparatorattribute. This is useful if you follow the European number format, where a,(comma) is used as the decimal separator, instead of the default.(dot).Specify the character to be displayed as thousand separator, while leaving the actual character used for calculations to the default value, using the
inThousandSeparatorattribute. This is useful if you follow the European number format, where a.(dot) is used as the thousand separator, instead of the default,(comma).
Refer to the code below:
{
"chart": {
"decimalSeparator": ",",
"thousandSeparator": "."
}
}
The chart will look like as shown below:
Click here to edit the above chart.
Configure Thousand Separator Position
Specify the number of digits after which the thousand separator character should be placed, using the thousandSeparatorPosition attribute. If you set its value to 0, the attribute will take its default value, which is 3, and places the separator after every three digits starting from the right.
Refer to the code below:
{
"chart": {
"thousandSeparatorPosition": "2,3"
}
}
The chart will look like as shown below:
Click here to edit the above chart.
Add Number Prefix and Suffix
To customize the prefix and suffix of the numbers on the chart, use the following attributes:
Specify the prefix for all the values on the chart using the
numberPrefixattribute. Note that the value of this attribute works only if you don't specifically mention the values of theyNumberPrefixandxNumberPrefixattributes.Specify the prefix for all the Y-axis values on the chart using the
yNumberPrefixattribute. If you don't mention this attribute, the chart will inherit the default value from thenumberPrefixattribute.Specify the prefix for all the X-axis values on the chart using the
xNumberPrefixattribute. If you don't mention this attribute, the chart will inherit the default value from thenumberPrefixattribute.Specify the suffix for all the values on the chart using the
numberSuffixattribute. Note that the value of this attribute works only if you don't specifically mention the values of theyNumberSuffixandxNumberSuffixattributes.Specify the suffix for all the Y-axis values on the chart using the
yNumberSuffixattribute. If you don't mention this attribute, the chart will inherit the default value from thenumberSuffixattribute.Specify the suffix for all the X-axis values on the chart using the
xNumberSuffixattribute. If you don't mention this attribute, the chart will inherit the default value from thenumberSuffixattribute.
Refer to the code below:
{
"chart": {
"numberSuffix": "/day",
"numberPrefix": "$"
}
}
The chart will look as shown below:
Click here to edit the above chart.
For dual y-axis charts, the primary axis performs number formatting and scaling by default. However, you have to explicitly define formatting and scaling for the secondary axis. To define the formatting and scaling properties for the secondary axis, prefix 's' to the attribute name. So,
numberPrefixbecomessNumberPrefix,forceYAxisValueDecimalsbecomesforceSYAxisValueDecimals, and so on.
Shorten Data Values
Shorten numbers displayed on charts by scaling them, with commonly used scales like K, M, etc..You can also define custom scales for numbers and then apply it to all numbers on the chart.
Let's start with the most basic example, which is already defined in the FusionCharts Suite XT- thousands (K) and millions (M) scales.
To enable automatic scaling, use the formatNumberScale attribute, which decides whether to add K (thousands) and M (millions) to a number after truncating and rounding it. Set this to 0, to disallow automatic formatting or 1 to allow it. Note that the value of this attribute works only if you don't specifically mention yFormatNumberScale and xFormatNumberScale attributes.
Refer to the code below:
{
"chart": {
"formatNumberScale": "1"
}
}
If you plot the data values as 1252322, 857023, 903753 and 1082357, then the rendered chart will look as shown below:
Click here to edit the above chart.
Notice that the numbers have been scaled down to K. By default, FusionCharts Suite XT has the K, M scaling defined for each chart.
In the following subsections, you can see how to define the scaling to suit your requirements:
Add Billions to Default Scaling
FusionCharts Suite XT does not have the scaling for billions defined. You have to explicitly modify the number scaling to add billions.
This scale, in human terms, will look like the following:
1000 = 1 K
1000 K = 1 M
1000 M = 1 B
Use the following attributes to add a billion scale to a chart:
Define the conversion ratio from one unit to the next unit using the
numberScaleValueattribute, which is a comma separated list of numbers, such as 10, 100, and 1000. Use it along with thenumberScaleUnitattribute to define the scale used for displaying numbers.Define the units of conversion from a lower unit to a higher unit using the
numberScaleUnitattribute, which is a comma separated list of units, such as K (thousands), M (millions), and B (billions). Use it along with thenumberScaleValueattribute.
Refer to the code below:
{
"chart": {
"numberScaleValue": "1000,1000,1000",
"numberScaleUnit": "K,M,B"
}
}
The chart will look as shown below:
Click here to edit the above chart.
Example 1: Display Time in the Scale
To display time in a chart in terms of progressively higher units (seconds, minutes, hours, days, etc.), build a scale indicating the time and then specify it in the chart.
Refer to the code below:
{
"chart": {
"numberScaleValue": "60",
"numberScaleUnit": " minutes"
}
}
The chart will look as shown below:
Click here to edit the above chart.
Example 2: Display Storage Capacity in the Scale
To display storage capacity in terms of progressively higher units, (megabytes (MB), gigabytes (GB), terabytes (TB), etc.), build a scale indicating the capacity of storage space and then specify it to the chart.
Refer to the code below:
{
"chart": {
"numberScaleValue": "1024,1024,1024",
"numberScaleUnit": " MB, GB, TB"
}
}
The chart will look as shown below:
Click here to edit the above chart.
Use Recursive Number Scaling
Recursive number scaling comes into the picture when you have number scales defined for your chart. With this, you can display the chart data better by breaking up the predefined number scale into smaller sections. For example, in a chart where time is being plotted, you can display 3.87 days as 3 days, 20 hours, 52 minutes and 25 seconds.
Use the following attributes for recursive scaling:
Set the value of the
scaleRecursivelyattribute to1to break data values down to lower level units.Set the value of the
maxScaleRecursionattribute to-1to enable recursion to the lowest possible unit level.
Refer to the code below:
{
"chart": {
"scaleRecursively": "1",
"maxScaleRecursion": "-1"
}
}
The chart will look as shown below:
Click here to edit the above chart.
For Scatter and Bubble charts, use the
xScaleRecursively,xMaxScaleRecursion, andxScaleSeparatorattributes to scale the numbers recursively on the x-axis. These attributes will work only when you set thexAxisLabelModeattribute toAUTOorMIXED. To scale the numbers recursively on the secondary y-axis in a Dual Y-Axis chart, use the attributessScaleRecursively,sMaxScaleRecursion, andsScaleSeparator.