1

私は20列の大きなCSVファイルを持っています。単一のステートメントでGoogle Charts - 特定の列を読む

、私は、1が10に列1の値を取ると列から11こう

20に値を取るために2をグラフ、チャートを作成できるようにしたいと思い、私は読んでいますCSVは一度ロードする必要があります。

現在のところ、両方のチャートで同じ列を読み取る以下のコードがあります。

誰でもこの方法を教えてもらえますか?

おかげ

function FwThroughputStacked(){ 
    $.get("../CRX1/Overall_DAB_Fortinet_Throughput_Report.csv", function(csvString) { 
     var arrayData = $.csv.toArrays(csvString, {onParseValue: $.csv.hooks.castToScalar}); 
     var data = new google.visualization.arrayToDataTable(arrayData); 
     var view = new google.visualization.DataView(data); 
     view.setColumns([0,1,2,3,4,5,6,7,8,9,10]); 

     var options = { 
     chartArea: {width: '80%', height: '75%'}, 
     explorer: {actions: ["dragToZoom", "rightClickToReset"]}, 
     isStacked: true, 
     hAxis: {title: data.getColumnLabel(0), minValue: data.getColumnRange(0).min, maxValue: data.getColumnRange(0).max, textStyle: {fontSize: 9}}, 
     vAxis: {title: "Megabits/s", minValue: data.getColumnRange(1).min, maxValue: data.getColumnRange(1).max, textStyle: {fontSize: 10}}, 
     legend: {position: 'top', maxLines: 10, textStyle: {fontSize: 9} }, 
     }; 
     var options2 = { 
     chartArea: {width: '80%', height: '75%'}, 
     explorer: {actions: ["dragToZoom", "rightClickToReset"]}, 
     hAxis: {title: data.getColumnLabel(0), minValue: data.getColumnRange(0).min, maxValue: data.getColumnRange(0).max, textStyle: {fontSize: 9}}, 
     vAxis: {title: "Megabits/s", minValue: data.getColumnRange(1).min, maxValue: data.getColumnRange(1).max, textStyle: {fontSize: 10}}, 
     legend: {position: 'top', maxLines: 10, textStyle: {fontSize: 9} }, 
     }; 

    var chart = new google.visualization.AreaChart(document.getElementById('throughputStacked')); 

    chart.draw(view, options); 
    var chart = new google.visualization.LineChart(document.getElementById('throughput')); 
    chart.draw(view, options2);  
    }); 
    } 

答えて

0

を使用すると、次のスニペットでoptions

に似各チャートに別々のビュー、
viewchart
のために作成さを必要とするような音 - と -
view2chart2のために作成されました

google.charts.load('current', { 
    callback: function() { 
    $.get("output.txt", function(csvString) { 
     var arrayData = $.csv.toArrays(csvString, {onParseValue: $.csv.hooks.castToScalar}); 
     var data = new google.visualization.arrayToDataTable(arrayData); 

     var view = new google.visualization.DataView(data); 
     view.setColumns([0,1,2,3,4,5,6,7,8,9,10]); 

     var view2 = new google.visualization.DataView(data); 
     view2.setColumns([11,12,13,14,15,16,17,18,19]); 

     var options = { 
     chartArea: {width: '80%', height: '75%'}, 
     explorer: {actions: ["dragToZoom", "rightClickToReset"]}, 
     isStacked: true, 
     hAxis: {title: data.getColumnLabel(0), minValue: data.getColumnRange(0).min, maxValue: data.getColumnRange(0).max, textStyle: {fontSize: 9}}, 
     vAxis: {title: "Megabits/s", minValue: data.getColumnRange(1).min, maxValue: data.getColumnRange(1).max, textStyle: {fontSize: 10}}, 
     legend: {position: 'top', maxLines: 10, textStyle: {fontSize: 9} }, 
     }; 

     var options2 = { 
     chartArea: {width: '80%', height: '75%'}, 
     explorer: {actions: ["dragToZoom", "rightClickToReset"]}, 
     hAxis: {title: data.getColumnLabel(0), minValue: data.getColumnRange(0).min, maxValue: data.getColumnRange(0).max, textStyle: {fontSize: 9}}, 
     vAxis: {title: "Megabits/s", minValue: data.getColumnRange(1).min, maxValue: data.getColumnRange(1).max, textStyle: {fontSize: 10}}, 
     legend: {position: 'top', maxLines: 10, textStyle: {fontSize: 9} }, 
     }; 

     var chart = new google.visualization.AreaChart(document.getElementById('throughputStacked')); 
     chart.draw(view, options); 

     var chart2 = new google.visualization.LineChart(document.getElementById('throughput')); 
     chart2.draw(view2, options2); 
    }); 
    }, 
    packages: ['corechart'] 
}); 
+0

この問題を解決できましたか? – WhiteHat

+0

こんにちは、はい、私はdygraphsライブラリを代わりに使用することにしました。これは特定の列を読むためのコード変更の1行でした:) - あなたの入力にも感謝します。何らかの理由でStack Overflowが誰かが返信したときに私に通知を与えません! – Kieran