Highcharts - 如何从count()查询结果添加/显示标签的名称数据

时间:2017-04-24 10:21:17

标签: javascript mysql highcharts

我们想要大家问我们从count()查询结果中显示标签名称的问题。我们已经找到了2天,但我们没有找到解决方案。

首先,这是数据库

Database's picture, focus on 'f5' column to displaying on highcharts

其次,我们生成了查询结果(这是我们的模型类)

public function ambilDataLamaWaktuTunggu(){
  // select f5, count(*) from tracer_study as pilihanF5 GROUP BY f5 
  $this->db->select("f5, count(id_tracer_study) as'pilihanF5'");
  $this->db->from('tracer_study');
  $this->db->group_by('f5');
  $result = $this->db->get()->result();
  return $result;
}

此查询的结果是

Result count's query

第三,这是View(这是javascript代码的快照)来显示饼图(我们使用,highcharts)

<script type="text/javascript">
<?php
  foreach ($num as $row){
    $data[] = $row->pilihanF5;
    $dataNama[] = $row->f5;
  }
?>

$('.grafik').highcharts({
  chart:{
    type: 'pie',
    marginTop: 50,
    renderTo: 'container'
  },
  credits:{
    enabled:false
  },
  tooltip:{
    pointFormat: '{series.name}: <b>{point.y} Orang</b>'
  },
  title:{
    text: 'Lama Waktu Tunggu untuk Pekerjaan Pertama'
  },
  subtitle:{
    text: 'Alumni Lulusan 2015-2016'
  },
  xAxis:{
    categories:['Waktu Tunggu xAxis'],
    labels:{
      style:{
        fontSize: '10px',
        fontFamily: 'Verdana, sans-serif'
      }
    }
  },
  legend:{
    labelFormatter: function(){
      if(this.name == 'Langsung Bekerja')
        return this.name + ': 1 Orang';
      else if (this.name == '1 Bulan') {
        return this.name + ': 2 Orang';
      }
    }
  },
  plotOptions:{
    pie:{
      allowPointSelect: true,
      cursor: 'pointer',
      dataLabels:{
        enabled:true
      },
      showInLegend: true
    }
  },
  series:[{
    'name':'Jumlah ',
    'data':[
       <?php echo join( $data, ',')?>
    ]
  }]
});

结束,我们要求什么。这是网页的屏幕截图。 screen shoot of diagram

问题: 我们想用数据库中的值添加label的名称。不仅显示'切片'。我们希望显示数据库中的数据名称。 请为您提供任何解决方案或建议。

对不起,对于这个新手问题。 非常感谢您的关注和解决方案。

0 个答案:

没有答案