2017-04-12 2 views
0

Ich möchte 2011 bis 2015 von meinem Tisch wählen. Hier ist die Tabelle:xAxis Kategorien Highcharts

enter image description here

So machte ich Abfrage wie diese

$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); 

Das ist die Controller auch.

Ich habe Ansicht:

$(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> 

Aber warum mein Diagramm so aussehen könnte:

enter image description here

Was kann ich tun, das zu beheben? Vielen Dank im Voraus

+0

Warum '$ tahunmasukpelamar' ist zwischen 2007 und 2011 und andere nicht. '$ tahunmasukpelamar' ist die Kategorieform von 2007 bis 2011 und die restlichen sind von 2004 bis 2015. Sie haben also den gleichen Bereich in allen Datenbankabfragen. –

+0

vielleicht sollten Sie die Abfrage wie diese kombinieren wählen Sie tahun masuk, lakilaki, perempuan, lainnya von 'Ihrem Tisch' wo tahunmasuk> = 2007 und tahunmasuk <= 2011. –

Antwort

1

Wie bereits erwähnt Ich mag 2011 wählen, bis zum Jahr 2015 von meinem Tisch

Anfrage ändern wie dieser

$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(); 

All anderen Code ist gleiches

Verwandte Themen