我想將多個csv文件加載到一個圖表中,以便我可以使用鑽取。由於每個數據集具有不同數量的觀測值或行,因此我無法使用具有多個列的單個csv。我想出瞭如何使用嵌套的$ .get()函數加載多個csv。但是,Highcharts將只繪製引用的最後一個數據集。我試着用三種不同的版本編寫代碼,但所有的代碼都只繪製引用的最後一個數據集。我研究過Highcharts文檔,但沒有找到符合我要求的任何內容。如何使用Highcharts數據模塊加載多個CSV
我使用Highcharts的數據模塊來加載csv,因爲它很簡單。不過,我願意接受其他需要解析文件的解決方案。以下是三種不同版本的我試過的樣本:
$.get('pref.csv', function(data1) {
$.get('create.csv', function(data2) {
$(chartID).highcharts({
data: {
csv: data2, data1
},
chart: {
type: 'bar'
}
});
});
});
或者
$.get('pref.csv', function(data1) {
$.get('create.csv', function(data2) {
$(chartID).highcharts({
data: {
csv: data2,
csv: data1
},
chart: {
type: 'bar'
}
});
});
});
或者
$.get('pref.csv', function(data1) {
$.get('create.csv', function(data2) {
$(chartID).highcharts({
data: {
csv: data1
},
data: {
csv: data2
},
chart: {
type: 'bar'
}
});
});
});
預先感謝您!
UPDATE 這是加載兩個或更多csv文件以在xAxis上使用日期的折線圖中使用的解決方案。
data.csv
Date,Mean
2001-01-01,0
2001-02-01,2.9
2001-03-01,12.9
2001-04-01,27.2
2001-05-01,38.5
2001-06-01,43.9
2001-07-01,40.7
2001-08-01,45.8
2001-09-01,50.6
data2.csv
Date,Mean
2001-01-01,2
2001-02-01,1.6
2001-03-01,8.2
2001-04-01,13.6
2001-05-01,15.6
2001-06-01,17.1
2001-07-01,15.8
2001-08-01,17
2001-09-01,13.3
function parseCSV(csvFile) {
// empty array for storing the chart data
var data = [];
// Split the lines
var lines = csvFile.split('\n');
// Iterate over the lines and add categories or series
$.each(lines, function(lineNo, line) {
if (lineNo != 0) {
var items = line.split(',');
// Insert date and player count into the series
data.push([Date.parse(items[0]), parseFloat(items[1])]);
}
});
return data
}
$.get('data.csv', function(data1) {
$.get('data2.csv', function(data2) {
// parse data1
var series1 = parseCSV(data1)
// parse data2
var series2 = parseCSV(data2)
$('container').highcharts({
chart: {
type: 'spline'
},
series: [{
data: series1
}, {
data: series2
}],
});
});
});
請提供例如 「下鑽」 – Fabricator