【问题标题】:Customise Highcharts Pie Chart Selection State so that slice does not animate out when selected自定义 Highcharts 饼图选择状态,以便切片在选择时不会动画
【发布时间】:2012-11-28 15:09:51
【问题描述】:

我正在尝试自定义 Highcharts 饼图切片的选择状态,以便在选择时不会移出。 HighCharts selection state documentation 为选择状态提供了“半径”选项,但这些设置对饼图没有影响:

$(function () {
var chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container',
        type: 'pie'
    },        
    plotOptions: {
        series: {
            allowPointSelect: true,
            marker: {
                states: {
                    select: {
                        radius: 0,
                        fillColor: '#666'
                    }
                }
            }
        }
    },

    series: [{
        data: [['Jan', 29.9], ['Feb', 71.5], ['Mar', 106.4], ['Apr', 129.2], ['May', 144.0], ['Jun', 176.0], ['Jul', 135.6], ['Aug', 148.5], ['Sep', 216.4], ['Oct', 194.1], ['Nov', 95.6], ['Dec', 54.4]]        
    }]
});
});​

Working Example

以下示例说明了更改所选切片的颜色,但这些设置为not documented,并且添加“半径”属性无效:

$(function () {
var chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container',
        type: 'pie'
    },        
    plotOptions: {
        series: {
            allowPointSelect: true,
            states: {
                select: {
                    color: '#666'
                }
            }
        }
    },

    series: [{
        data: [['Jan', 29.9], ['Feb', 71.5], ['Mar', 106.4], ['Apr', 129.2], ['May', 144.0], ['Jun', 176.0], ['Jul', 135.6], ['Aug', 148.5], ['Sep', 216.4], ['Oct', 194.1], ['Nov', 95.6], ['Dec', 54.4]]        
    }]
    });
});​

working example

是否有人设法禁用饼图切片选择动画,同时仅对所选切片应用填充颜色?

【问题讨论】:

    标签: highcharts


    【解决方案1】:

    感谢 Sebastian 和 Pawel 在 Highcharts Support Forum 上的帮助,切片动画通过“slicedOffset: 0”设置被禁用:

    $(function () {
      var chart = new Highcharts.Chart({
        chart: {
          renderTo: 'container',
          type: 'pie'
        },        
        plotOptions: {
          series: {
            allowPointSelect: true,
            slicedOffset: 0,
            states: {
                select: {
                    color: '#666'
                }
            }
        }
    },
    
    series: [{
        data: [['Jan', 29.9], ['Feb', 71.5], ['Mar', 106.4], ['Apr', 129.2], ['May', 144.0], ['Jun', 176.0], ['Jul', 135.6], ['Aug', 148.5], ['Sep', 216.4], ['Oct', 194.1], ['Nov', 95.6], ['Dec', 54.4]]        
        }]
      });
    });​
    

    working example

    【讨论】:

      【解决方案2】:

      基本上,您希望无论何时单击饼图,所单击的切片都不会消失。这样做很简单:

      allowPointSelect: false,
      

      它会阻止该切片消失,无需设置任何 slicedOffset 这是JsFiddle

      【讨论】:

      • 不,这将完全禁用选择,我只是想在选择切片时禁用动画,所以 slicedOffset 是必需的。
      • @RobWillis 感谢您的澄清
      猜你喜欢
      • 2014-12-01
      • 1970-01-01
      • 2014-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多