2016-06-19 1 views
0

私はJSONテーブルに基づいて、Googleのチャートに「静的」の列を追加する方法

var data = new google.visualization.DataTable(<?=$jsonTableA>); 

どのようにすることができます(データソースとして)JSONテーブルに基づいているラッパーでGoogleのチャートを持っていますボタンをクリックすると、静的な値を持つ列が追加されますか?

私は変数を持つことになります(その変数の値は4と仮定します)。そして、JSONテーブルに5行がある場合、NEWデータの5行にはすべて「4」が入りますJSONテーブルに20の行がある場合、NEWデータの20行すべてがその列に「4」を持ちます。トリックを行う必要がありますdataTable.setCell()と組み合わせる

答えて

1

for (var i = 0; i < dataTable.getNumberOfRows(); i++)

google.charts.load('current', { 
 
    'packages': ['corechart'] 
 
}); 
 
google.charts.setOnLoadCallback(drawChart); 
 

 
var addStatic; // global variable to hold click function 
 

 
function drawChart() { 
 
    var data = google.visualization.arrayToDataTable([ 
 
    ['Year', 'Sales', 'Expenses'], 
 
    ['2013', 1000, 400], 
 
    ['2014', 1170, 460], 
 
    ['2015', 660, 1120] 
 
    ]); 
 

 
    var chart = new google.visualization.ColumnChart(document.getElementById('chart_div')); 
 
    chart.draw(data); 
 

 
    // this function adds a colmn and sets a constant value in each row of that column, 
 
    // independently of the number of rows in the table 
 
    // then redraw the chart. 
 
    // no var: the addStatic variable must be global for the button's click handler to access it 
 
    addStatic = function() { 
 
    var staticValue = Math.random() * 1000; 
 
    data.addColumn('number', 'Constant'); 
 
    for (var i = 0; i < data.getNumberOfRows(); i++) { 
 
     data.setCell(i, data.getNumberOfColumns() - 1, staticValue); 
 
    } 
 
    chart.draw(data); 
 
    } 
 

 
}
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> 
 
<button onclick="addStatic();">Add Static Column</button> 
 
&lt;== click this button to add a column with a static value in it 
 
<div id="chart_div"></div>

+0

我々は再び会うには:)あなたにポールに感謝します。どうもありがとうございました。 –

関連する問題