Локализация
Справочник API ▸ Ядро ▸ Локализация
Форматирование чисел, дат и валют зависит от языка и региональных настроек. Хотя в стандартной сборке D3 используется американский английский, вы можете изменить поведение форматировщиков D3, загрузив необходимые локали.
d3.locale(определение)
Возвращает новую локаль, заданную указанным определением. Определение локали должно включать следующие свойства для форматирования чисел:
- decimal - строка разделителя десятичных знаков (например,
"."). - thousands - строка разделителя групп разрядов (например,
","). - grouping - массив размеров групп (например,
[3]), циклически используемый по мере необходимости. - currency - строки префикса и суффикса валюты (например,
["$", ""]).
(Обратите внимание, что свойство thousands является несколько неточным, так как определение группировки позволяет группировать разряды не только по тысячам.)
Определение локали также должно включать следующие свойства для форматирования времени:
- dateTime - строка формата даты и времени (%c) (например,
"%a %b %e %X %Y")). - date - строка формата даты (%x) (например,
"%m/%d/%Y"). - time - строка формата времени (%X) (например,
"%H:%M:%S"). - periods - эквиваленты понятия «до полудня» и «после полудня» в локали (например,
["AM", "PM"]). - days - полные имена дней недели, начиная с воскресенья.
- shortDays - сокращенные имена дней недели, начиная с воскресенья.
- months - полные имена месяцев (начиная с января).
- shortMonths - сокращенные имена месяцев (начиная с января).
Например, стандартная локализация американского английского (en_US) определяется как:
{
"decimal": ".",
"thousands": ",",
"grouping": [3],
"currency": ["$", ""],
"dateTime": "%a %b %e %X %Y",
"date": "%m/%d/%Y",
"time": "%H:%M:%S",
"periods": ["AM", "PM"],
"days": ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
"shortDays": ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
"months": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
"shortMonths": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
} Локализация для русского языка (ru_RU) может быть определена как:
{
"decimal": ",",
"thousands": "\u00A0",
"grouping": [3],
"currency": ["", " руб."],
"dateTime": "%A, %e %B %Y г. %X",
"date": "%d.%m.%Y",
"time": "%H:%M:%S",
"periods": ["AM", "PM"],
"days": ["воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота"],
"shortDays": ["вс", "пн", "вт", "ср", "чт", "пт", "сб"],
"months": ["января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря"],
"shortMonths": ["янв", "фев", "мар", "апр", "май", "июн", "июл", "авг", "сен", "окт", "ноя", "дек"]
} locale.numberFormat(спецификатор)
Аналог d3.format для локали.
locale.timeFormat(спецификатор)
Аналог d3.time.format для локали.
locale.timeFormat.utc(спецификатор)
Аналог d3.time.format.utc для локали.
© 2010–2016 Michael Bostock
Licensed under the BSD License.
https://github.com/d3/d3-3.x-api-reference/blob/master/Localization.md