Examples of commonly used number transformations using d3.format. Includes:
- comma separator for large numbers
- fixed decimal places
- comma separator and fixed decimal places
- abbreviation using unit suffix
- dollars with commas and decimals
- percent
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8" /> | |
| <title>d3 learning</title> | |
| <script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> | |
| <style type="text/css"> | |
| body { | |
| padding: 15px; | |
| font: 14px sans-serif; | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <script type="text/javascript"> | |
| var margin = {top: 10, right: 10, bottom: 10, left: 10}; | |
| var width = 960 - margin.left - margin.right, | |
| height = 500 - margin.top - margin.bottom; | |
| var body = d3.select("body"); | |
| var formatComma = d3.format(","), | |
| formatDecimal = d3.format(".1f"), | |
| formatDecimalComma = d3.format(",.2f"), | |
| formatSuffix = d3.format("s"), | |
| formatSuffixDecimal1 = d3.format(".1s"), | |
| formatSuffixDecimal2 = d3.format(".2s"), | |
| formatMoney = function(d) { return "$" + formatDecimalComma(d); }, | |
| formatPercent = d3.format(",.2%"); | |
| var number = 1500; | |
| body.append("p").text("Starting number: " + number).style("font-weight", "bold"); | |
| body.append("p").text(function() { return 'd3.format(",") : ' + formatComma(number); }); | |
| body.append("p").text(function() { return 'd3.format(".1f") : ' + formatDecimal(number); }); | |
| body.append("p").text(function() { return 'd3.format(",.2f") : ' + formatDecimalComma(number); }); | |
| body.append("p").text(function() { return 'd3.format("s") : ' + formatSuffix(number); }); | |
| body.append("p").text(function() { return 'd3.format(".1s") : ' + formatSuffixDecimal1(number); }); | |
| body.append("p").text(function() { return 'd3.format(".2s") : ' + formatSuffixDecimal2(number); }); | |
| body.append("p").text(function() { return 'function(d) { return "$" + d3.format(",.2f")(d); } : ' + formatMoney(number); }); | |
| body.append("p").text(function() { return 'd3.format(",.2%") : ' + formatPercent(number); }); | |
| </script> | |
| </body> | |
| </html> |