Javascript HighCharts parsing CSV

Javascript HighCharts parsing CSV

本文关键字:CSV parsing HighCharts Javascript      更新时间:2023-09-26

我已经通过stackoverflow和Highcharts支持尝试了类似的例子,但仍然无法正确显示图形。 尝试显示一个样条图,其中包含格式为小时,温度的csv文件中的数据,如下面的示例所示:

22,84
23,83
00,82
01,81
02,79
03,77
04,75

这是我目前拥有的html/javascript:

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script src="../../js/highcharts.js"></script>
    <script src="../../js/modules/exporting.js"></script>

    <script type="text/javascript">
    $(document).ready(function() {
    var time = [];
    var temp = [];
    $.get('forecast.csv', function(data) {
               var lines = data.split(''n');
               $.each(lines, function(lineNo, line) {
                var items = line.split(',');
                time.push(parseInt(items[0]));
                temp.push(parseInt(items[1]));
               });
        });
        var options = {
          chart: {
             renderTo: 'container',
              type: 'spline'
          },
          title: {
              text: 'Temperature Forecast'
          },
          xAxis: {
             title: {
                text: 'Hour'
             },
             categories: time
          },      
          yAxis: {
                 title: {
                    text: 'Temperature'
                 }
          },
          series: [{
                 data: temp
          }]
          };                      
    var chart = new Highcharts.Chart(options);
    });
    </script>
</head>
<body>
    <div id="container" style="width: 100%; height: 400px"></div>
</body>

我的图表显示,但是没有数据。有什么想法吗?谢谢。。

您需要添加一个二维数组作为数据。您可以声明一个全局变量并将数据添加到该变量中。

var chartData=[]
    var dataTemp = new Array(parseInt(items[0]), parseInt(items[1]));
chartData.push(dataTemp);

series: [{
                 data: chartData
          }]