Domanda

Ho un file CSV:

2011-01-11, 0:00, 4  
2011-01-11, 0:05, 2  
2011-01-11, 0:10, 6  
2011-01-11, 0:15, 8  
...  
2011-01-12, 0:00, 4  
2011-01-12, 0:05, 2  
...  
2011-01-13, 20:00, 4  
2011-01-13, 20:05, 2  
...  

Quale sarebbe la migliore pratica per mostrare solo i dati ultimi 48 ore?

Ecco il parser CSV:

$.get('data.csv', function(data) {
                // Split the lines
                var lines = data.split('\n');
                $.each(lines, function(lineNo, line) {
                    var items = line.split(',');

                // header line containes categories
                if (lineNo == 0) {
                    $.each(items, function(itemNo, item) {
                        if (itemNo > 0) options.xAxis.categories.push(item);
                    });
                }

                // the rest of the lines contain data with their name in the first position
                else {
                    var series = { 
                        data: []
                    };
                    $.each(items, function(itemNo, item) {
                        if (itemNo == 0) {
                            series.name = item;
                        } else {
                            series.data.push(parseFloat(item));
                        }
                    });

                    options.series.push(series);

                }

            });

E 'un buon modo per modificare questo parser per caricare solo lo scorso 288 linea (dati 24 ore) dal CSV? Se sì, come posso farlo?

È stato utile?

Soluzione

La vostra fonte è un po 'caotici, ma sembra che si poteva solo fetta fuori le righe che si desidera:

var lines = data.split('\n').slice(-288);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top