В предыдущей версии моего кода, который я использовал, чтобы установить соответствующий формат локали, как этоd3.time.format.multi в V4.x
format = {
"decimal": ".",
"thousands": "",
"grouping": [3],
"currency": ["€", ""],
"dateTime": "%a %b %e %X %Y",
"date": "%d-%m-%Y",
"time": "%H:%M:%S",
"periods": ["AM", "PM"],
"days": ["Domenica", "Lunedi", "Martedi", "Mercoledi", "Giovedi", "Venerdi", "Sabato"],
"shortDays": ["Do", "Lu", "Ma", "Me", "Gi", "Ve", "Sa"],
"months": ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"],
"shortMonths": ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"]
}
, а затем
var localeFormatter = d3.locale(format);
// set time tick format
var tickFormat = localeFormatter.timeFormat.multi([
["%H:%M", function (d) { return d.getMinutes(); }],
["%H:%M", function (d) { return d.getHours(); }],
["%a %d", function (d) { return d.getDay() && d.getDate() != 1; }],
["%b %d", function (d) { return d.getDate() != 1; }],
["%B", function (d) { return d.getMonth(); }],
["%Y", function() { return true; }]
]);
я, наконец, хранить эти параметры формата клеща, так что я могу использовать их в своих графиках
D3Preferences['localTimeTickFormat'] = tickFormat;
После обновления выпустить v4.2.8 d3.locale
ушел и я не может понять, как добиться такого же результата.
Может кто-нибудь указать мне в правильном направлении? Документация d3 не помогло мне
Просто, чтобы понять это: для вашего второго фрагмента, который должен быть v3-кодом, он должен быть 'localeFormatter.time.format.multi', поскольку' timeFormat' уже v4. – altocumulus
То, что вы на самом деле ищете, не является заменой для 'd3.locale', а' d3.time.format.multi', который теперь немного отличается. Проверьте документацию модуля [d3-time-format] (https://github.com/d3/d3-time-format#d3-time-format) (третий абзац, начинающийся * «Вы можете реализовать более сложные условные форматы времени. .. "*) для объяснения. – altocumulus