javascript - Highcharts 中的多类别选择图表

标签 javascript angularjs highcharts

我正在努力在 Highcharts 中创建多选柱形图。 我的目标是让用户能够选择/取消选择图表的任何类别。

预期行为:

  1. 在类别(即“0 - 1M”)上单击,两个条形图都应更改颜色。再次单击该类别将恢复颜色。

  2. 如何通知外部应用程序(AngularJS)所选列?

我使用的是allowPointSelect: true,但它只选择类别的一列,而不是两列。

allowPointSelect: true,

不确定如何从这里继续。

JSfiddle 在这里 - http://jsfiddle.net/w7dvrkhz/9/

请问有什么想法吗?

最佳答案

1. 此自定义行为可以在 plotOptions.series.point.events.click 属性的回调函数中轻松编程:

  point: {
    events: {
        click: function() {
        var clickedPoint = this,
            chart = clickedPoint.series.chart;

        chart.series.forEach(function(s) {
            s.points.forEach(function(p) {
            if(p.x == clickedPoint.x) {
              p.select(null, true);
            }
          });
        });
      }
    }
  },

现场演示: http://jsfiddle.net/kkulig/d37x5mo7/

使用上述代码时需要禁用

allowPointSelect

API 引用:

<小时/>

2.我对 Angular 不太了解,但我在第一点中使用的事件似乎是检查当前选择了哪些点的好地方。

关于javascript - Highcharts 中的多类别选择图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47974072/

相关文章:

python - 将 'dict' 对象从 Django 模板传递到 Angular Controller - 避免 jsonify 和解析

javascript - 将自定义数据传递到 Fancybox 实例

javascript - ng-model 传递的 Javascript 日期格式问题

javascript - 动态标记颜色 Highcharts

javascript - Highcharts:在列单击时获取类别名称

javascript - 使用 Date() 对象的 d3.bisector 无法解析

javascript - 如何从两个下拉菜单之一中选择插入到数据库的同一列

javascript - 如何在不同组件的 angular2 中设置 css 样式,以便它们能够很好地适应彼此?

javascript - 向 DOM Element 对象添加属性有什么问题?

javascript - 如何更改 highcharts 的局部函数