Javascript highcharts饼图多节选择
我想在饼图中选择多个部分。如果已选中,则在单击时应取消选中该节 我找到了一个例子。但在这种情况下,只能选择一个部分,单击任何其他部分时,将取消选择所选部分 同样,我发现了另一个例子[ $(函数(){ var图表=新的Highcharts.图表({ 图表:{ renderTo:'容器', 键入:“馅饼”Javascript highcharts饼图多节选择,javascript,highcharts,Javascript,Highcharts,我想在饼图中选择多个部分。如果已选中,则在单击时应取消选中该节 我找到了一个例子。但在这种情况下,只能选择一个部分,单击任何其他部分时,将取消选择所选部分 同样,我发现了另一个例子[ $(函数(){ var图表=新的Highcharts.图表({ 图表:{ renderTo:'容器', 键入:“馅饼” }, plotOptions: { series: { states: { hover: {
},
plotOptions: {
series: {
states: {
hover: {
enabled: false
}
},
point: {
events: {
click: function () {
this.graphic.attr({
fill: 'yellow'
});
}
}
}
}
},
tooltip: {
enabled: false
},
series: [{
data: [{
name: 'test',
y: 29.9,
color: "#CCCCCC",
active: false
}, {
name: 'test2',
y: 71.5,
color: "#CCCCCC",
active: false
}, {
name: 'test3',
y: 106.4,
color: "#CCCCCC",
active: false
}]
}]
}); });
]。在这种情况下,可以选择多个部分,但在再次单击时不会取消选择
请提供帮助!!
Shift+Mouseclick
或CTRL+Mouseclick
用于选择/取消选择“点”。只需设置:
allowPointSelect:true
尝试以下解决方案:
默认情况下如何实现这一点?默认情况下,我的意思是,如果选择了某个分区,并且用户单击了其他分区,则该分区也会被选中。取消选择分区的唯一方法是单击分区本身。我仍在检查此问题,但据我所知,这在Windows上有效。如果我发现更多信息,将稍后报告:)我想我没有清楚地表达我自己。你的建议当然有效。我想要的是:在饼图上的每一次鼠标点击都应该是“ctrl+mouseclick”这很好用。谢谢Pawel。唯一剩下的是-每次点击我都想打印所有选定部分的id。你能建议如何实现这一点吗。所以只需打印
this.series.chart.getSelectedPoints()
array,其中包含所有选中的点。在JS控制台中,您有参考资料。好的。我会尝试一下。您能解释一下上面的答案是如何工作的吗?甚至这个链接似乎也在工作……那么您的答案是如何改进的呢?重要的是:实际上,我不想将部分切掉,我只想将颜色改为yellow可标记所选内容并将颜色更改回原始颜色以标记取消选择。无法实现此目的。这两个示例都是我的,但如果您想获得所选点的列表,请使用this.select()
。要更改颜色,只需设置状态。选择.color
。如果您不想要切片,请设置切片偏移:0
,请参阅:
plotOptions: {
series: {
point: {
events: {
click: function(event){
this.slice(null);
this.select(null, true);
console.log(this.series.chart.getSelectedPoints());
}
}
}
}
}