2016-08-09 10 views
2

ソースデータテーブルの列から平均したデータテーブルに列を作成する必要があります。平均列Googleグラフ

これを行う場所はありますか? jdata.getColumnRange(Column#)。maxとjdata.getColumnRange(Column#)。minを使用して、ソースデータテーブルから列の最大値と最小値を見つけることができます。

以下は、最大値と最小値を取得してテーブルに格納するコードです。平均値に対してこれをどうやって行うのですか?

 // Set MAX VALUE of Table    
     // Set 'VAY' MAX VALUE of Table 
     data.setCell(0, 1, jdata.getColumnRange(1).max); 
     // Set 'VBY' MAX VALUE of Table 
     data.setCell(1, 1, jdata.getColumnRange(2).max); 
     // Set 'VCY' MAX VALUE of Table 
     data.setCell(2, 1, jdata.getColumnRange(3).max); 
     // Set 'KW3DO' MAX VALUE of Table 
     data.setCell(3, 1, jdata.getColumnRange(4).max); 
     // Set 'KVR3' MAX VALUE of Table 
     data.setCell(4, 1, jdata.getColumnRange(5).max); 
     // Set 'PF3' MAX VALUE of Table 
     data.setCell(5, 1, jdata.getColumnRange(6).max); 


     // Set MIN VALUE of Table  
     // Set 'VAY' MIN VALUE of Table 
     data.setCell(0, 2, jdata.getColumnRange(1).min); 
     // Set 'VBY' MIN VALUE of Table 
     data.setCell(1, 2, jdata.getColumnRange(2).min); 
     // Set 'VCY' MIN VALUE of Table 
     data.setCell(2, 2, jdata.getColumnRange(3).min); 
     // Set 'KW3DO' MIN VALUE of Table 
     data.setCell(3, 2, jdata.getColumnRange(4).min); 
     // Set 'KVR3' MIN VALUE of Table 
     data.setCell(4, 2, jdata.getColumnRange(5).min); 
     // Set 'PF3' MIN VALUE of Table 
     data.setCell(5, 2, jdata.getColumnRange(1).min); 

答えて

0

あなたは(< - 詳細については、リンクを参照してください)集計を実行するためにgroup()メソッドを使用することができます別のDataTable

group()結果ので、あなたはその後

// i.e. - get average column 
console.log(groupData.getValue(0, 1)); 
値にアクセスすることができます

データを表示するテーブルチャートを描画する次の作業スニペットを参照してください。前とgroup()

google.charts.load('current', { 
 
    callback: function() { 
 
    var data = new google.visualization.DataTable({ 
 
     cols: [ 
 
     {label: 'Stooge', type: 'string'}, 
 
     {label: 'TV Appearances', type: 'number'} 
 
     ] 
 
    }); 
 

 
    data.addRows([ 
 
     ['Moe', 129], 
 
     ['Larry', 132], 
 
     ['Curly', 99], 
 
     ['Shemp', 42] 
 
    ]); 
 

 
    var table = new google.visualization.Table(document.getElementById('table_div0')); 
 
    table.draw(data); 
 

 
    var groupData = google.visualization.data.group(
 
     data, 
 
     // group across entire table -- use modifier to return same value for every row 
 
     [{column: 0, modifier: function() {return '';}, type: 'string'}], 
 
     [ 
 
     // aggregation functions 
 
     {column: 1, aggregation: google.visualization.data.avg, type: 'number', label: 'Average'}, 
 
     {column: 1, aggregation: google.visualization.data.count, type: 'number', label: 'Count'}, 
 
     {column: 1, aggregation: google.visualization.data.min, type: 'number', label: 'Minimum'}, 
 
     {column: 1, aggregation: google.visualization.data.max, type: 'number', label: 'Maximum'}, 
 
     {column: 1, aggregation: google.visualization.data.sum, type: 'number', label: 'Sum'}, 
 
     // custom aggregation function 
 
     {column: 1, aggregation: doubleSum, type: 'number', label: 'Double Sum'} 
 
     ] 
 
    ); 
 

 
    function doubleSum(values) { 
 
     var aggValue = 0; 
 
     values.forEach(function (appearances) { 
 
     aggValue += (appearances * 2); 
 
     }); 
 
     return aggValue; 
 
    } 
 

 
    var table = new google.visualization.Table(document.getElementById('table_div1')); 
 
    table.draw(groupData); 
 

 
    // i.e. - get average 
 
    console.log(groupData.getValue(0, 1)); 
 
    }, 
 
    packages: ['table'] 
 
});
div { 
 
    padding: 6px; 
 
}
<script src="https://www.gstatic.com/charts/loader.js"></script> 
 
<div id="table_div0"></div> 
 
<div id="table_div1"></div>

+0

を使用した後 は、このことができます願っています... – WhiteHat