【问题标题】:Highcharts chart update function causes missing data pointHighcharts图表更新功能导致数据点缺失
【发布时间】:2020-09-08 00:59:14
【问题描述】:

我用来自谷歌电子表格的数据和点击按钮时的图表更新功能构建了一个面积图:see fiddle

图表更新功能更改图表中显示的电子表格的列:

    $(document).ready(function(){
  $("#total").click(function(){
              var chart = $('#container').highcharts();  
              chart.update({
                        yAxis: [{
                          min: -6000,
                          max: 6000,
                          tickPositions: [0, 2000, 4000, 6000]
                        },
                        {
                          min: -600,
                          max: 600,
                          tickPositions: [200, 400, 600]
                        }],
                        data: {
                               seriesMapping: [{
                                x: 0,
                                y: 1,
                                case_bis4: 2, 
                                case_5bis14: 3,
                                case_15bis34: 4,
                                case_35bis59: 5,
                                case_60bis79: 6,  
                                case_ab80: 7,
                                death_total: 8,
                                death_bis4: 9,  
                                death_5bis14: 10,  
                                death_15bis34: 11, 
                                death_35bis59: 12,
                                death_60bis79: 13,
                                death_ab80: 14
                              },
                              {
                                x: 0,
                                y: 8,
                                case_total: 1,
                                case_bis4: 2, 
                                case_5bis14: 3,
                                case_15bis34: 4,
                                case_35bis59: 5,
                                case_60bis79: 6,  
                                case_ab80: 7,
                                death_bis4: 9,  
                                death_5bis14: 10,  
                                death_15bis34: 11, 
                                death_35bis59: 12,
                                death_60bis79: 13,
                                death_ab80: 14
                              }]
                        }
                    });               
  });
});

不幸的是,每次单击按钮时,都会丢失一个数据点。出了什么问题?

【问题讨论】:

    标签: highcharts


    【解决方案1】:

    感谢您的分享。对我来说这似乎是一个错误,我在 Highcharts Github 问题频道上报告了它,您可以在其中关注此线程:https://github.com/highcharts/highcharts/issues/14189

    据我了解,您想创建一个自定义图例,我认为可以通过不同的方式实现(以避免chart.data 更新)。我的想法是循环浏览整个系列并隐藏或显示它们。

    这是一个简单的演示:https://jsfiddle.net/BlackLabel/emyq7j94/ - 您可以通过单击 ab80、60 bis 79 和 alle 来测试它。

    每个按钮都会触发类似的功能(您可以将其保存为出色的功能):

      chart.series.forEach((s, i) => {
        if (i !== 5 && i !== 12) {
          s.hide()
    
        } else {
          s.show()
          s.update({
            visible: true
          }, false)
        }
      })
    

    【讨论】:

      猜你喜欢
      • 2011-12-10
      • 1970-01-01
      • 2021-12-24
      • 1970-01-01
      • 2012-11-09
      • 1970-01-01
      • 1970-01-01
      • 2016-08-14
      • 2016-11-30
      相关资源
      最近更新 更多