对于许多点的数据,无法使用Highcharts绘制线条

时间:2013-02-28 02:12:34

标签: highcharts

我尝试使用线条样式绘制数据超过300点的图表。我无法获得预期的图形,但只能使用标记。但是,当我缩放图形时,可以看到线条。我做了很多工作来展示这条线,但我失败了。最后,当我减少数据点的数量时,我可以看到该行。我有经验,但我没遇到过这种问题。在highcharts中是bug吗?我怎样才能克服这个困难?我期待着你的建议。

2 个答案:

答案 0 :(得分:0)

可能你的容器宽度不够,而且标记“重叠”了。因此,请尝试停用标记http://api.highcharts.com/highcharts#plotOptions.line.marker.enabled并检查是否显示行。

PS。源代码将有所帮助(你可以在jsfiddle.net中重现它)

答案 1 :(得分:0)

非常感谢你对这个问题的关注。我自己解决了这个问题。 当我用JSON.stringify再次检查我的数据时,我发现最后的绘图数据是[NaN,NaN]。当我删除这些数据并再次绘图时,我得到了线图。我从文本文件创建数据并忘记修剪文本的原因。当我从数据数组中添加/删除[NaN,NaN]时,该行可能会显示或消失。这种现象可以再现。

以下是示例代码。 data1不能在行中显示,但data2可以。     var chart;

var data1 = [
  [0, 1],
  [1, 2],
  [3, 5],
  [10, 9]
 ];


data1.push([NaN, NaN]); // if the last data is [NaN, NaN], the line will not be shown.

var data2 = [
  [2, 3],
  [4, 5],
  [10, 1]

];



$(function () {
    // define the options
    var options = {

        chart: {
            renderTo: 'container'
        },

        plotOptions: {
            series: {
                    lineWidth: 2,

                    marker: {
                        enabled: false
                    }
            }
        },

        series: [{
            name: 'test 1',
            data: data1
        }, {
            name: 'test 2',
            data: data2
        }]
    };

 chart = new Highcharts.Chart(options);


});