Я работаю над проектом по подбору sh моего JS, и я считаю, что Highcharts довольно сложный. Я настроил проект, который извлекает текущие данные JSON из API и отображает результаты на карте. Когда вы нажимаете на состояние, вы можете просмотреть исторические данные для этого состояния. если вы смещаете щелчок, вы можете просматривать более одного состояния.
Моя ось X отформатирована с датами из каждого состояния, поскольку не каждое государство начало отслеживать данные одновременно. Когда выбрано несколько состояний, информация неверна, потому что, несмотря на то, что все они имеют одну и ту же дату для самой последней точки данных (сегодня), первая точка данных в массиве дат меняется. Например, если вы нажмете «Нью-Йорк», их первая точка данных начнется 3/04, но если вы нажмете «Коннектикут», первая точка данных начнется 3/07.
Можно ли как-то это согласовать? Могу ли я, чтобы мои категории начинались с самой последней точки данных и работали в обратном направлении, поэтому точки данных на сегодняшний день совпадают?
Вот моя ручка: https://codepen.io/maxpalmer/pen/rNVRzVX?editors=0010
Stackoverflow требует, чтобы я опубликовал некоторый код, поэтому вот функция, которую я написал, которая собирает данные API в массив для каждого состояния для диаграммы области:
for (i = 0; i < stateAbbrevs.length; i++){
var values = new Array(), categories = new Array();
// var categories = new Array();
var state = stateAbbrevs[i];
var stateObj = jsonData.filter(obj => obj.state == state);
for (x = 0; x < stateObj.length; x++) {
var value = stateObj[x].positive;
var date = formatDate(stateObj[x].date);
var name = stateNames[i];
values.push(value);
categories.push(date);
}
values.reverse();
categories.reverse();
historicData[state] = {
name: name,
data: values,
categories: categories
};
}
}```