简体   繁体   English

ChartJS,条形图标签中的多行

[英]ChartJS, Multiple line in bar chart label

I am using ChartJS library to draw chart in a PHP project.我正在使用ChartJS 库在 PHP 项目中绘制图表。 In a bar chart I want the label in X-axis in two line .在条形图中,我希望X 轴中的标签分为两行

What is the way?方法是什么?

My Current chart is like我的当前图表就像

在此处输入图片说明

I want my Chart like below我想要我的图表如下

在此处输入图片说明

Here is my Code Snippet这是我的代码片段

<?php   
 $array_data = sql::rows("attendance_summary_report","DateVal between 
 '{$previous_date}' and '{$last_date}' order by DateVal asc");
    //print_r($array_data);
    $level_array=array();
    $pre_array=array();
    $abs_array=array();
    if(is_array($array_data) && count($array_data)>0){
        foreach($array_data as $ad){
            if($ad['DayVal']==''){
                $ad['DayVal']='No Day';
                $ad['present']=0;
                $ad['absent']=0;
            }
            array_push($level_array, 
  $ad['DayVal']."\n".date('d/m',strtotime($ad['DateVal'])));
            array_push($pre_array,$ad['present']);
            array_push($abs_array,$ad['absent']);
        }
    }
 ?>

 <script> $(function () { var areaChartData = { labels : <?php echo json_encode($level_array,true)?>, datasets: [......] } var barChartCanvas = $('#barChart').get(0).getContext('2d') var barChartData = jQuery.extend(true, {}, areaChartData) var temp0 = areaChartData.datasets[0] var temp1 = areaChartData.datasets[1] barChartData.datasets[0] = temp1 barChartData.datasets[1] = temp0 var barChart = new Chart(barChartCanvas, { type: 'bar', data: barChartData, options: barChartOptions }) } </script>

This can be achieved by passing the label as an array of strings where each element represents a line, eg:这可以通过将标签作为字符串数组传递来实现,其中每个元素代表一条线,例如:

let labels = [
  'A', // normal label.
  ['First line', 'Second line', '...'] // multi-line label.
];

A working example:一个工作示例:

 new Chart(document.getElementById("chart"), { type: 'bar', data: { labels: ['A', ['Water', 'Heating'], 'C'], datasets: [{ data: [1, 1, 1] }] } });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.min.js"></script> <canvas id="chart"></canvas>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM