首页 > 解决方案 > 如何使用 PHP 在 Highcharts 柱形图中显示日期和日期

问题描述

我正在尝试使用 PHP 在 Highcharts Coulmn Graph 中显示日期和日期。我想以 (Thursday 26/12/2019) 格式打印日期和日期。现在它只显示日期名称,我正在使用 JSON 传递日期名称。我尝试解决这个问题,但我无法解决这个问题。

$rate_names = [];
$dates = [];
$day_names = [];
$stars_data = [];

$from_date2 = $from_date;
while (strtotime($from_date2) <= strtotime($to_date)) {

    $day_names[] = date('l', strtotime($from_date2));
    $dates[] = $from_date2;
    $from_date2 = date('Y-m-d', strtotime('+1 day', strtotime($from_date2)));
}


Highcharts.chart('column', {
        chart: {
            type: 'column'
        },
        xAxis: {
            categories: <?= json_encode($day_names) ?>,
            crosshair: true
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Count'
            }
        },
        tooltip: {
            headerFormat: '<span style="font-size:10px">{point.key}</span><table>',
            pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}: </td>' +
                '<td style="padding:0"><b>{point.y:.1f} </b></td></tr>',
            footerFormat: '</table>',
            shared: true,
            useHTML: true
        },
        series: JSON.parse('<?= $processed_stars_data ?>')
    });

标签: phpjsonhighcharts

解决方案


这种情况有两种解决方案。首先 - 从您的服务器站点以以下格式设置 xAxis.categories 数组:

['Thursday 26/12/2019', 'Thursday 27/12/2019', 'Thursday 28/12/2019', ...etc];

演示:https ://jsfiddle.net/BlackLabel/fp04ksL7/

或者从 Highcharts 站点使用 Highcharts 格式化程序回调功能来获得想要的格式。像这儿:

演示:http: //jsfiddle.net/BlackLabel/8sd4k7wp/1/


API:https ://api.highcharts.com/highcharts/xAxis.categories

API:https ://api.highcharts.com/highcharts/xAxis.labels.formatter


推荐阅读