У меня есть графические данные D3 как здесь: https://www.metricsgraphicsjs.org/examples.htm#lines с примером кода
MG.data_graphic({
title: "Singleton",
description: "Handling a solitary data point.",
data: [{'date': new Date('2015-03-05T21:00:00Z'), 'value': 12000}],
width: 600,
height: 200,
right: 40,
target: '#singleton'
});
и разница в том, что я храню данные в базе данных. Но у меня проблема с отображением дат. Мои данные JSON (взятые из MySQL) выглядят так:
var data1 = [
[
{
"date": "2018-04-28T13:42:55Z",
"value": 20.8,
"added": "2018-04-28T13:42:55Z"
}
],
[
{
"date": "2018-04-28T13:42:55Z",
"value": 22.8,
"added": "2018-04-28T13:42:55Z"
}
],
[
{
"date": "2018-04-28T13:42:55Z",
"value": 23.9,
"added": "2018-04-28T13:42:55Z"
}
],
[
{
"date": "2018-04-28T13:42:55Z",
"value": 21.3,
"added": "2018-04-28T13:42:55Z"
}
]
];
Когда я пытаюсь отобразить эти данные, они не работают, показывает ошибки типа <path> attribute d: Expected number, "MNaN,86.570057581…"
Но с другой стороны, если я установлю другую переменную, например
var data2 = [
[
{'date': new Date('2015-03-05T21:07:00Z'), 'value': 12000},
{'date': new Date('2015-03-05T21:10:00Z'), 'value': 5500},
{'date': new Date('2015-03-05T21:15:00Z'), 'value': 1000}
],
[
{'date': new Date('2015-03-05T21:05:00Z'), 'value': 18000},
{'date': new Date('2015-03-05T21:07:00Z'), 'value': 15000},
{'date': new Date('2015-03-05T21:15:00Z'), 'value': 7000}
]
];
Этот второй пример работает, и мне было интересно, что этот "new Date ()" делает с данными. Как я могу «исправить» первый массив data1 и сохранить его в другой переменной с правильными датами? - Я пробовал этот тип даты: Дата сб 28 апреля 2018 13:56:55 GMT + 0000 (UTC), но это не помогло, не сработало. Как это:
[
{'date': 'Apr 28 2018 13:57:55 GMT+0000 (UTC)', 'value': 18000},
{'date': 'Apr 28 2018 13:58:55 GMT+0000 (UTC)', 'value': 15000},
{'date': 'Apr 28 2018 13:59:55 GMT+0000 (UTC)', 'value': 7000}
]
Это не сработало. Преобразует ли «new Date ()» дату и время в целое число, строку или что-то еще?
Я просто хочу найти способ изменить data1
переменную и преобразовать ее даты в правильные значения, чтобы иметь возможность отображать их на графике.
Спасибо, ребята!