添加额外系列到自定义highstock图表

时间:2014-07-22 14:43:32

标签: javascript php jquery html5 highstock

这个问题类似于几个星期前我问过的问题,有些问题得到了解答,但我仍然遇到了主要问题。在这个自定义图表中,我已经能够获得尽可能多的内容,并且我在编写第3个系列时遇到了解读正确数据的问题。

此图表是为了从CSV文件中读取数据。 CSV文件是必须的,我不能使用javascript或任何其他方法,因为我将有5个不同的人在CSV文件中输入他们的数据,他们不知道如何将内容编码为javascript,mysql或其他方法。它必须是excel或CSV。

我遇到的问题是我添加了额外的系列,但它没有从CSV文件中读取它。第一个系列读取日期,第二个系列读取第二行数据,第三个系列读取第二行。这里有人知道如何让第三个系列读取第三行数据吗?等等(第4系列读第4行数据......)?

顺便说一下这是代码(代码不包括额外的系列):

的index.php

<?php header('Access-Control-Allow-Origin: *'); ?>
<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>ITS Dashboard Test Chart</title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script type="text/javascript">
    $(function() {
    $.getJSON('csvparse.php?callback=?', function(data) {
            // Create the chart
            $('#container').highcharts('StockChart', {


                rangeSelector : {
                    selected : 1
                },

                title : {
                    text : 'ITS Dashboard Test Chart'
                },

                series : [{
                    name : 'Open Tickets',
                    data : data,
                    tooltip: {
                        valueDecimals: 0
                    }
                }]
            });
        });
    });

    </script>
    <script src="datalod.js"></script>
    <script src="dataexp.js"></script>


</head>
<body>
    <div id="container" style="height: 500px; min-width: 500px"></div>
</body>
</html>

csvparse.php

<?php echo $_GET["callback"]; 
echo "(";
if (($handle = fopen("table.csv", "r")) !== FALSE) {
$row = 0;
$days_array = array();
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    if ($row > 0) {
        $time_epoch = strtotime($data[0]) * 1000;
        $day_array = array($time_epoch, $data[1]);
        array_push($days_array, $day_array);
    }
    $row++;
}
$days_array_asc = array_reverse($days_array);
print json_encode($days_array_asc, JSON_NUMERIC_CHECK);
fclose($handle);
}
echo ");";
?>

data.csv

   Date,Open Tickets,Row2,Row3,Row4,Row5,Row6
   2013-12-01,01,09,0,0,0,0
   2013-11-01,06,05,0,0,0,0
   2013-10-01,11,12,0,0,0,0
   2013-09-01,16,13,0,0,0,0

提前感谢能帮助我解决这个难题的人:)

0 个答案:

没有答案
相关问题