Chart.js传递以1而不是0开头的数组的问题

时间:2018-11-22 10:24:53

标签: javascript php laravel chart.js

我尝试使用插件Fxcosta在Laravel / PHP中创建Chart.js图表​​。因此,我对这个社区以及编程语言都是陌生的。我尝试使用实际月份的所有日期制作一个动态图表。 (11月= 30天)。通过此任务,我创建了一个函数(calcDaysOfActualMonth),该函数返回包含实际月份的所有日期的数组。因此,我当前的问题是,我想从第一天而不是0开始创建图表。因此,当我将循环索引更改为1时,由于它不是从0开始,所以无法将数组$ labelsArr传递给图表。 >

        // CHART LAST MONTH
        $labelsArr = $this->calcDaysOfActualMonth();
        $chartjs = app()
        ->chartjs
        ->name('lineChartTest')
        ->type('line')
        ->size(['width' => 400, 'height' => 200])
        ->labels($labelsArr)
        ->datasets([
            [
                "label" => "Actual Month",
                'backgroundColor' => "rgba(38, 185, 154, 0.31)",
                'borderColor' => "rgba(38, 185, 154, 0.7)",
                "pointBorderColor" => "rgba(38, 185, 154, 0.7)",
                "pointBackgroundColor" => "rgba(38, 185, 154, 0.7)",
                "pointHoverBackgroundColor" => "#fff",
                "pointHoverBorderColor" => "rgba(220,220,220,1)",
                'data' => [65, 59, 55, 12, 33, 65, 59, 80, 81, 56,65, 12, 55, 12, 33, 55, 59, 80, 81, 56,65, 59, 80, 81, 56,65, 59, 80, 81, 56],
            ]
        ])
        ->options([]);

我的函数试图创建一个从1开始的数组索引,从0开始工作,从1开始不工作:

private function calcDaysOfActualMonth(){
    $days = date("t");
    $daysArr = [];

    for($i=0; $i<$days; $i++){
        $daysArr[$i] = $i;
    }

    return $daysArr;
}

我的图表就是这个,目前以0开头: My Chart of actual month

真诚的对不起,请问我。我希望我能提供足够的信息!提前非常感谢您。

1 个答案:

答案 0 :(得分:0)

是的,这是一个小问题。因此,Magnus Eriksson的答案帮助我解决了这个问题:

它是:$ daysArr [] = $ i +1;

With dd() the $daysArr

The chart with the index 1

非常感谢您的快速回答!