首页 > 解决方案 > this.map.tick 不是函数

问题描述

我通过 php 循环将条形图中的数据呈现为分组数据。我在 js 中的数据是

var graphTarget12 = $("#myBarChartOdometer");

    var barGraph = new Chart(graphTarget12, {
        type: 'bar',
        data: {
                      labels: 'Lahore,Ahmed',
          datasets: [
                          {
              label:'hi',
                data:[320,100]                },
                        {
              label:'hi',
                data:[120,200]                },
                    ]
      }
    });

我在文件中的代码如下

<script>
        var graphTarget12 = $("#myBarChartOdometer");

        var barGraph = new Chart(graphTarget12, {
            type: 'bar',
            data: {
            <?php 
              $data = Odometer();
              // echo count($data);
              $name = array();
              for($i=0;$i<count($data);$i++) {
                  $arrays = $data[$i];
                  array_push($name,$arrays['groupName']);
                 // print_r(count($meter));
                  // die;
                  $nameImplode = implode(',', $name);
                }
             ?>
              labels: <?php echo "'".$nameImplode."'"; ?>,
              datasets: [
              <?php 
                for($i=0;$i<count($data);$i++) {
                  $arrays = $data[$i];
                  $meter = $arrays['odometer'];
                 // print_r(count($meter));
                  // die;
                  $odoValue = array();
              for($s=0;$s<count($meter);$s++)
              { 
                $odo = $meter[$s];
                array_push($odoValue,$odo['odometer']);
              }
              $implode = implode(',', $odoValue);
              ?>
                {
                  label:'hi',
                    data:<?php echo "[".$implode."]";?>
                },
            <?php  } ?>
            ]
          }
        });
    </script>

我在php中的数据格式如下

$array = array(
    array('groupName' => 'Lahore','odometer' => array(array('odometer' =>320),array('odometer' => 100))),
    array('groupName' => 'Ahmed','odometer' => array(array('odometer' =>120),array('odometer' => 200)))
);

请帮我解决这个问题。我已经花了 2 天时间,无法找到解决方案。如果有其他方式请告诉我

标签: phpchart.js

解决方案


你的标签应该像数组。

 labels: ['Lahore','Ahmed'],

你这样用过

labels: 'Lahore,Ahmed',

推荐阅读