之前一直用的百度的Echarts但是他没有3D的饼图所以今天用到HighCharts中的3D饼图,但是发现,饼图的数据标签颜色属性中的color是string类型,而不是array类型的,说明无法跟随饼图的颜色来进行着色,这就很坑了,在网上找了很多的解决方法,都是在
formatter属性中打主意,而且是通过判断数据名称来进行着色,但是这样便无法动态进行数据的更替了,当我在formatter中打印出this的时候发现里面有color的属性,对应了每个饼图的亚瑟,这样我们就不需要通过判断来分别给数据标签着色了
我们只需要在formatter中这样写:
formatter:function(){
return '<p style="color:'+ this.color+'">'+ this.point.name +'</p><br><p style="color:'+ this.color+'">'+ (this.percentage).toFixed(1)+'%</p>';
}
通过插入HTML来进行颜色的区别上色。直接通过style css样式来定义每个标签的颜色。