我正在使用Laravel后端为Highcharts生成原始数据数组。我使用this Highcharts example作为基础。我无法使用我的图表来格式化x轴日期,也无法使用工具提示来显示正确的日期(如示例所示)。我认为我的问题是数据格式。
我的Laravel控制器代码:
$transactionData = Transaction::where('type', '=', 'INVOICE')
->whereNotIn('status', ['DRAFT', 'CANCELLED'])
->where('issue_date', '>=', $fiscal_start)
->orderBy('due_date', 'asc')
->select(['issue_date', 'amount_transaction_total'])
->get()->toArray();
$invoicedLineChartData = [];
foreach ($transactionData as $data) {
$invoicedLineChartData[] = [
Carbon::parse($data['issue_date']),
floatval($data['amount_transaction_total']))
];
}
这会生成如下所示的数据:
[[{"date":"2016-07-04 01:11:07.000000","timezone_type":3,"timezone":"UTC"},909],
[{"date":"2016-07-04 01:11:07.000000","timezone_type":3,"timezone":"UTC"},1988]...]
我可以从Highcharts示例中看到AJAX返回如下所示的数据:
[[Date.UTC(2013,5,2),0.7695],
[Date.UTC(2013,5,3),0.7648],
[Date.UTC(2013,5,4),0.7645],...]
从Laravel端为此Highchart类型格式化后端数据的正确方法是什么?我尝试了各种Carbon格式但结果仍然不正确。
此外,为什么当数据中没有负数条目时,y轴从-500开始?谢谢!