2014-01-16 184 views
0

我在創建Google圖表時遇到問題。我想在一個圖表中有2個普通酒吧和一個基於2個變量的堆疊酒吧。下面到目前爲止我的代碼:谷歌圖表創建除2「正常」酒吧之外的堆疊酒吧

google.load("visualization", "1", {packages:["corechart"]}); 
    google.setOnLoadCallback(drawChart); 

    function drawChart() { 

    var data = google.visualization.arrayToDataTable([ 

     ['H axis',  'Name 1',     'Name 2',      'Name 3',   'Name 4'], 

     ['Label',   <?php echo $var1; ?>,  <?php echo $var2; ?>,  <?php echo $var3; ?>,  <?php echo $var4; ?>] 

    ]); 

    var options = { 

     chartArea:{left:100,top:50,width:"70%",height:"70%"}, 
     title: 'Title', 
     isStacked: false, 
     series: { 0: {type: "bars", isStacked: false}, 
       1: {type: "bars", isStacked: false}, 
       2: {type: "steppedArea", isStacked: true}, 
       3: {type: "steppedArea", isStacked: true}}, 
     hAxis: {title: 'Title', titleTextStyle: {color: 'red'}}, 
     vAxis: {title: 'Title', titleTextStyle: {color: 'red'}} 

    }; 

    var chart = new google.visualization.ColumnChart(document.getElementById('chart1')); 

    chart.draw(data, options); 

    } 

我試圖創建一個組合圖表與谷歌頁面的幫助。在谷歌搜索沒有給我相關的結果,所以我想知道這裏的專家是否可以幫助我。

這是我的第一篇文章,所以我希望我正確地做到了這一點。

在此先感謝!

回答

1

您應該可以通過使用堆疊酒吧「僞裝」,但只能爲一個酒吧提供多個值。所以,你的數據變量將是這個樣子:

var data = google.visualization.arrayToDataTable([ 
    ['Label', 'Value 1', 'Value 2', 'Value 3'], 
    ['Value 1', 25, 0, 0], 
    ['Value 2', 0, 15, 10] 
]); 

根據您希望您的圖表顯示你將不得不修改一些其他的顯示選項,但上面的應該第一條是一個單杆值爲25,第二個欄將是一個有兩個值的堆疊欄。

當然,您也必須設置isStacked: true