2017-04-12 10 views
0

私は自分のテーブルから2011年から2015年までを選びたいと思っています。こちらの表は、次のとおりです。xAxisカテゴリーハイチャート

enter image description here

だから、私はあまりにもコントローラあるこの

$tahunmasukpelamar = (new \yii\db\Query()) 
     ->select(['TahunMasuk']) 
     ->from('temp_jkpelamarmagister') 
     ->Where(['between', 'TahunMasuk', 2007, 2011]) 
     ->column(); 

    $lakilakipelamar = (new \yii\db\Query()) 
     ->select(['Lakilaki']) 
     ->from('temp_jkpelamarmagister') 
     ->column(); 

    $perempuanpelamar = (new \yii\db\Query()) 
     ->select(['Perempuan']) 
     ->from('temp_jkpelamarmagister') 
     ->column(); 
    $lainlainpelamar = (new \yii\db\Query()) 
     ->select(['Lainlain']) 
     ->from('temp_jkpelamarmagister') 
     ->column(); 

    $lakilakipelamar = array_map('floatval', $lakilakipelamar); 
    $perempuanpelamar = array_map('floatval', $perempuanpelamar); 
    $lainlainpelamar = array_map('floatval', $lainlainpelamar); 

    $data['tahunmasukpelamar'] = json_encode($tahunmasukpelamar); 
    $data['lakilakipelamar'] = json_encode($lakilakipelamar); 
    $data['perempuanpelamar'] = json_encode($perempuanpelamar); 
    $data['lainlainpelamar'] = json_encode($lainlainpelamar); 

のようなクエリを作りました。

I持ってビュー

$(function() { 
    $('#my-chart').highcharts({ 
     chart: { 
     type: 'column' 
    }, 
    title: { 
     text: 'Jumlah Pelamar Magister Berdasarkan Jenis Kelamin' 
    }, 
    xAxis: { 
     categories: $tahunmasukpelamar 
    }, 
    yAxis: 
    { 
     title: 
     { 
      text: 'Jumlah' 
     } 
    }, 
    credits: 
    { 
     enabled: false 
    }, 
    series: [{ 
      name: 'Laki-Laki', 
      data: $lakilakipelamar 
     }, { 
      name: 'Perempuan', 
      data: $perempuanpelamar 
     }, 
     { 
      name: 'Lainnya', 
      data: $lainlainpelamar 
     }] 
}); 
}); 
")?> 
</div> 
</div> 

しかし、なぜ私のチャートは、次のように表示される可能性:

enter image description here

私はそれを修正するために何ができますか?事前に感謝

+0

なぜ '$ tahunmasukpelamar'言及しました2007年から2011年の間であり、その他はそうではありません。 '$ tahunmasukpelamar'は2007年から2011年のカテゴリ形式であり、残りは2004年から2015年までです。したがって、すべてのデータベースクエリで同じ範囲があります。 –

+0

多分あなたはこのようなクエリを組み合わせるべきです。この選択は、あなたのテーブルのtahunmasuk、= lakilaki、perempuan、lainnyaがtahunmasuk> = 2007、tahunmasuk = –

答えて

1

としては私は私のテーブルから2015年までの2011を選択したい

この

$tahunmasukpelamar = (new \yii\db\Query()) 
    ->select(['TahunMasuk']) 
    ->from('temp_jkpelamarmagister') 
    ->Where(['between', 'TahunMasuk', 2011, 2015]) 
    ->column(); 

$lakilakipelamar = (new \yii\db\Query()) 
    ->select(['Lakilaki']) 
    ->from('temp_jkpelamarmagister') 
    ->Where(['between', 'TahunMasuk', 2011, 2015]) 
    ->column(); 

$perempuanpelamar = (new \yii\db\Query()) 
    ->select(['Perempuan']) 
    ->from('temp_jkpelamarmagister') 
    ->Where(['between', 'TahunMasuk', 2011, 2015]) 
    ->column(); 
$lainlainpelamar = (new \yii\db\Query()) 
    ->select(['Lainlain']) 
    ->from('temp_jkpelamarmagister') 
    ->Where(['between', 'TahunMasuk', 2011, 2015]) 
    ->column(); 

などの変更クエリのすべての他のコードと同じです

関連する問題