【问题标题】:Highchart - Connect nulls only when value is nullHighcharts - 仅当值为空时才连接空值
【发布时间】:2018-09-08 05:22:52
【问题描述】:

我有一个Highchart,它呈现一个line 系列,如下面的sn-p 所示:

Highcharts.chart('container', {

    title: {
        text: 'The graphs connect from April to June, despite the null value in May'
    },

    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
            'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    },

    plotOptions: {
        series: {
            connectNulls: true
        }
    },

    series: [{
        data: [
            20,
            60,
            null,
            11,
            null,
            160,
            120,
            130,
            NaN,
            NaN,
            80,
            40],
        type: 'line',
        name: 'Area range series',
        marker: {
            enabled: false
        }
    }]

});
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts-more.js"></script>

<div id="container"></div>

我知道 Highchart 有一个属性 connectNulls 来连接空值。但我只想在值为Null 而不是NaN 时连接。

【问题讨论】:

    标签: javascript highcharts


    【解决方案1】:

    NaN 不是正确的点格式,就像字符串或布尔值一样。如果 value 不是数字,则将其视为空点。我认为您想使用相反的选项:connectNulls 为 false 并使用给定的索引删除空点,演示:http://jsfiddle.net/BlackLabel/fquznbeq/4/

    您可以自动执行此过程:http://jsfiddle.net/BlackLabel/fquznbeq/8/

    function toHCFormat(data) {
      var formatted = [];
    
      data.forEach(function (point, i) {
        if (point === null) {
          // do nothing
        } else if (isNaN(point)) {
          formatted.push([i, null]);
        } else {
          formatted.push([i, point]);
        }
      });
    
      return formatted;
    }
    

    用途:

    data: toHCFormat([
      20,
      60,
      null,
      11,
      null,
      160,
      120,
      130,
      NaN,
      NaN,
      80,
      40
    ]),
    

    【讨论】:

    • 我只是以不同的方式应用了相同的解决方案。但最后它也会删除空值并将NaN 设置为Null
    猜你喜欢
    • 2015-07-29
    • 1970-01-01
    • 2013-03-09
    • 2021-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-29
    • 2022-01-09
    相关资源
    最近更新 更多