highcharts - 尝试使用csv数据源,让'e.replace不是一个函数'

时间:2016-03-22 14:08:29

标签: javascript highcharts

以下是我的完整代码。我或多或少地从highcharts网站上的教程中复制了它。 'data.csv'文件与我的HTML文件位于同一文件夹中(我也尝试输入完整的文件路径)。使用断点,我确认正在加载文件中的数据,没有问题。在某个步骤,我无法确定我一直得到错误'e.replace不是一个函数'。我能说的最好的是这是来自一个名为data.js的文件。 'e.replace'的唯一例子是:

parseCSV: function () {
            var b = this,
            a = this.options,
            e = a.csv,
            f = this.columns,
            d = a.startRow || 0,
            c = a.endRow || Number.MAX_VALUE,
            h = a.startColumn || 0,
            q = a.endColumn || Number.MAX_VALUE,
            i,
            g,
            s = 0;
            e && (g = e.replace(/\r\n/g, '\n').replace(/\r/g, '\n').split(a.lineDelimiter || '\n'), i = a.itemDelimiter || (e.indexOf('\t') !== - 1 ? '\t' : ','), j(g, function (a, e) { //SNIP

但如果我在那条线上保留一个断点,执行似乎永远不会去那里......

我的代码:

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Highcharts Example</title>

        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <style type="text/css">
${demo.css}
        </style>
        <script type="text/javascript">
$(function () {

    // Get the CSV and create the chart
    $.get('data.csv', function (csv) {

        $('#container').highcharts({

            data: {
                csv: csv
            },

            chart: {
                type: 'column'
            },

            title: {
                text: 'Data Source Test'
            },

            subtitle: {
                text: ''
            },

            yAxis: { // right y axis
                title: {
                    text: null
                }
            }


        });
    });

});
        </script>
    </head>
    <body>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/data.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>

<!-- Additional files for the Highslide popup effect -->
<script src="https://www.highcharts.com/samples/static/highslide-full.min.js"></script>
<script src="https://www.highcharts.com/samples/static/highslide.config.js" charset="utf-8"></script>
<link rel="stylesheet" type="text/css" href="https://www.highcharts.com/samples/static/highslide.css" />

<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>

    </body>
</html>

我很抱歉,如果这个问题听起来很愚蠢,但我已经在这2天了,并且已经尝试了所有可能没有运气的互联网搜索。

更新:我终于能够看到错误发生在哪里,我可以确认它是在粘贴在顶部的代码段中。当它到达相关的行时,'e'的值显示为'Document',其位置为'null'。还有很多其他信息,但我不确定哪个有用。如果有任何特殊要求,请告诉我,我会发布。

0 个答案:

没有答案