Понимание формата даты оси x nvd3
как дата (x xAxis) отформатирована как "1025409600000"? Я изучал их документацию, но не могу понять, как это работает, это сделало бы мою жизнь проще, если бы кто-то помог мне понять, как изменить это на "нормальный" формат даты, например MMDDYYYYY
Это график: http://nvd3.org/ghpages/stackedArea.html
документация: https://github.com/mbostock/d3/wiki/Time-Formatting
спасибо
1 ответов
я интерпретировал ваш вопрос как то, как 1025409600000 форматируется в MMDDYY, как это происходит в Примере NV.
в Примере, на который вы указали, ось x имеет даты почти в формате, который вы хотите %m/%d / %Y (или MMDDYY) дата оси x отформатирована в следующей строке:
chart.xAxis
.tickFormat(function(d) { return d3.time.format('%x')(new Date(d)) });
так d3.time.format('%x')
задает формат даты, возвращаемой из (new Date(d))
. Документация, на которую вы указали, позволяет нам узнать, каким будет формат и что is %x
- дата, как "%m/%d / %Y" который, похоже, возвращает " %m/%d/%y". После прочтения документации я ожидал, что код NV вернет формат, который вам нужен, Но вы можете легко получить формат после:
d3.time.format('%m/%d/%Y')(new Date(d));
на new Date(d)
принимает данные даты и преобразует их в дату javascript. Данные даты в Примере NV - это количество миллисекунд с 1 января 1970 00: 00: 00 UTC (Unix Epoch) - см. Это MDN страница. Вы можете проверить это самостоятельно, набрав new Date(1025409600000)
в консоли.
чтобы заставить D3 распознать код формат даты, будь то %m/%d / %Y или что-нибудь еще, что вам нужно создать формат времени, а затем проанализировать данные даты. Это описано на странице форматирования времени D3, на которую вы указали ссылку, и я просто адаптирую то, что там, к вашему примеру.
создайте нужный вам формат времени в:
var format = d3.time.format("%m/%d/%Y");
и использовать это, чтобы проанализируйте свои данные:
format.parse(d.Date);
без вашего кода я не могу точно сказать, куда это должно идти, но это должно быть довольно ясно. Вы также можете попробовать это в консоли.
надеюсь, что это помогает