Я строю графики метрик, используя график. js, и я строю сгруппированную гистограмму.
Каждый столбец в разных группах представляет данные за разные годы. Не во всех группах есть данные за каждый год, поэтому мне нужно иметь различную структуру для каждой группы. Для этого конкретного вопроса мне нужен массив моих данных, чтобы он выглядел следующим образом
[633, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0]
.
У меня есть два отдельных запроса sql, тянущих 633 и 113. Затем я создаю два разных массива, делая это
$array1 = array($value1, array_fill(1, 2, 0));
$array2 = array($value2, array_fill(4, 9, 0));
Затем я объединяю два массива, чтобы создать один массив, что мои данные могут быть отправлены на график.
$finalArray = array_merge($array1, $array2);
, который дает результат:
, который смотрит прямо на данные и порядок. Однако я не уверен, почему мои значения из базы данных не имеют ключа к go со значением, и большая проблема заключается в том, что когда массивы объединяются, запятая отсутствует, поэтому значение 113 отображается неправильно группа баров в моем графике.
Как и на графике, находится библиотека javascript. Я публикую результаты, полученные при отправке данных в файл javascript. Я отправляю данные PHP в javascript, возвращая переменную массива из функции PHP, а затем вызываю эту переменную в моем файле javascript.
var finalArray = <? echo json_encode($courseData, JSON_PRETTY_PRINT) ?>;
Так что я надеюсь, что смогу понять, почему запятая отсутствует и / или что я делаю неправильно.