伙计我的应用程序中有一个饼图,是我从UI部门获得的。现在点击图例后我想更改"标题"中显示的值。饼图。
以下是给我的图表代码:
$('#performancePieChart').highcharts({
chart: {
backgroundColor: '#f5f7f7', style: { fontFamily: 'Roboto, Sans-serif', color: '#aeafb1' }
},
title: {
style: { color: '#838589' }, text: '<b>' + myDepartmentWiseSeriesCount + '</b><br>Issues', align: 'center', verticalAlign: 'middle', y: 0, x: -185
},
tooltip: {
headerFormat: '{point.y:,.1f}<br/>', pointFormat: $('#performancePieChart').data('tooltip')
},
legend: {
itemStyle: { color: '#838589' }, symbolWidth: 10, symbolHeight: 5, itemWidth: 170, symbolRadius: 0,
itemMarginBottom: 10, backgroundColor: '#f5f7f7', align: 'right', borderWidth: 0, width: 340, height: 250, x: 0, y: 80
},
plotOptions: {
pie: {
allowPointSelect: false, cursor: 'pointer', dataLabels: { enabled: false, },
colors: ['#cc6ae5', '#6c51d4', '#318fe0', '#31cee0', '#80d343', '#856aed', '#5272e6', '#31b0e0', '#31e0b1',
'#d3cb43'], showInLegend: true, center: ['50%', '50%']
},
},
series: [{
type: 'pie', name: 'Department Issues', innerSize: '70%',
data: myDepartmentWiseSeries
}]
});
此处myDepartmentWiseIssueCount
&amp; myDepartmentWiseSeries
是具有&#34;问题数量的动态变量&#34;和&#34;部门名称&#34;分别。
现在点击图例按钮后,我想更新myDepartmentWiseSeriesCount
以下是我的图表参考图片:
现在,Administration
和Application Development
部门的值为&#34; 1&#34;并且Administrative Process
的值为&#34; 2&#34;总数&#34; 4&#34;显示在饼图的中心。
此外,当我点击任何图例时,该饼图部分会自动消失,但值为&#34; 4&#34;不会改变。我也想更新中心值。例如,如果我关闭Administrative Process
(值为2),则饼图中心的值应更改为剩余值(4-2 = 2)。
我该怎么做?我可以调用特定的图例事件然后更新值吗?
答案 0 :(得分:1)
上述答案都没有奏效。这就是我为解决问题所做的工作:
plotOptions: {
pie: {
allowPointSelect: true, cursor: 'pointer', dataLabels: { enabled: false, },
colors: ['#cc6ae5', '#6c51d4', '#318fe0', '#31cee0', '#80d343', '#856aed', '#5272e6', '#31b0e0', '#31e0b1',
'#d3cb43'], showInLegend: true, center: ['50%', '50%'], point: {
events: {
legendItemClick: function () {
..code here...
} } }, }, }
答案 1 :(得分:0)
看看plotOptions.series.events.legendItemClick
。这将使您可以访问被单击的项目,并允许您运行其他代码。
答案 2 :(得分:0)
希望this示例能够正常工作。
title:{
useHTML:true,
text: '<div id="title">default title</div>'
},
plotOptions: {
series: {
events: {
legendItemClick: function(event) {
console.log(this);
$('#title').html(this.name);
}
}
}
},