Как я могу инвертировать данные оси Y от svggraph(библиотека php)?

Мне нужно инвертировать данные из моего графика, например, когда я получаю данные с марта 2015 года по апрель 2014 года, я хочу, чтобы март 2015 года (фактическое время) был справа, а не слева. Я использую библиотеку SVGGraph. Спасибо!

$graph = new SVGGraph($w, $h, $settings);
$data = [];
for ($i = 1; $i <= 12; $i++) {
    switch ($op) {
        case "eaqf-f":
            $data["$y-$m"] = StatUtil::getTotalEaInvoiced($y, $m, $oid);
            $data["$y-$m"] = $data["$y-$m"]['q'];
        break;

        case "cv-val":
            $data["$y-$m"] = StatUtil::getInvoicedCVs($y, $m, $oid);
        break;

        case "eaqf-r":
            $data["$y-$m"] = StatUtil::getTotalConsumption($y, $m, $oid);
        break;

        default: throw RuntimeException("Unsupported op: $op");
    }

    if (--$m == 0) {
        $m = 12;
        --$y;
    }
}

$graph ->Values($data);
$graph ->Render("Linegraph");

1 ответ

for ($i = 1; $i <= 12; $i++) {
$_key = sprintf('%1$04d-%2$02d', $y, $m);
    switch ($op) {
    case "eaqf-f":
        $data[$_key] = StatUtil::getTotalEaInvoiced($y, $m, $oid);
        $data[$_key] = $data[$_key]['q'];
        break;

и используйте ksort перед рендерингом

ksort($data, SORT_STRING);
Другие вопросы по тегам