我通过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天时间,无法找到解决方案。如果有任何其他方式请告诉我
你的标签应该像数组一样。
labels: ['Lahore','Ahmed'],
你曾经这样用过
labels: 'Lahore,Ahmed',