locale.format(specifier)
Returns a new format function for the given string specifier. The returned function takes a number as the only argument, and returns a string representing the formatted number. The general form of a specifier is:
[[fill]align][sign][symbol][0][width][,][.precision][type]
The fill can be any character. The presence of a fill character is signaled by the align character following it, which must be one of the following:
-
>- Forces the field to be right-aligned within the available space. (Default behavior). -
<- Forces the field to be left-aligned within the available space. -
^- Forces the field to be centered within the available space. -
=- like>, but with any sign and symbol to the left of any padding.
The sign can be:
-
-- nothing for positive and a minus sign for negative. (Default behavior.) -
+- a plus sign for positive and a minus sign for negative. -
(- nothing for positive and parentheses for negative. - (space) - a space for positive and a minus sign for negative.
The symbol can be:
-
$- apply currency symbols per the locale definition. -
#- for binary, octal, or hexadecimal notation, prefix by0b,0o, or0x, respectively.
The zero (0) option enables zero-padding; this implicitly sets fill to 0 and align to =. The width defines the minimum field width; if not specified, then the width will be determined by the content. The comma (,) option enables the use of a group separator, such as a comma for thousands.
Depending on the type, the precision either indicates the number of digits that follow the decimal point (types f and %), or the number of significant digits (types , e, g, r, s and p). If the precision is not specified, it defaults to 6 for all types except (none), which defaults to 12. Precision is ignored for integer formats (types b, o, d, x, X and c). See precisionFixed and precisionRound for help picking an appropriate precision.
The available type values are:
-
e- exponent notation. -
f- fixed point notation. -
g- either decimal or exponent notation, rounded to significant digits. -
r- decimal notation, rounded to significant digits. -
s- decimal notation with an SI prefix, rounded to significant digits. -
%- multiply by 100, and then decimal notation with a percent sign. -
p- multiply by 100, round to significant digits, and then decimal notation with a percent sign. -
b- binary notation, rounded to integer. -
o- octal notation, rounded to integer. -
d- decimal notation, rounded to integer. -
x- hexadecimal notation, using lower-case letters, rounded to integer. -
X- hexadecimal notation, using upper-case letters, rounded to integer. -
c- converts the integer to the corresponding unicode character before printing. -
(none) - likeg, but trim insignificant trailing zeros.
The type n is also supported as shorthand for ,g. For the g, n and (none) types, decimal notation is used if the resulting string would have precision or fewer digits; otherwise, exponent notation is used. For example:
d3.format(".2")(42); // "42"
d3.format(".2")(4.2); // "4.2"
d3.format(".1")(42); // "4e+1"
d3.format(".1")(4.2); // "4"
Please login to continue.