echarts饼图自动动画_echarts饼图定时自动切换

本文介绍使用ECharts实现动态更新的饼状图方法,包括如何设置饼图样式、动态高亮显示图表中的不同部分,并配合标题进行同步更新,以增强数据可视化效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pie_chart.js文件内容如下

var domchart = document.getElementById("mychart");

var domtitle = document.getElementById("mytitle");

var myindex = 0;

var mycolor = ['red','green','purple','blue', 'black','pink'];

function DrawPieArea(drawdom, piedata,color, curIndex, titleDom) {

option = {

color:color,

series: [

{

type: 'pie',

radius: ['80%', '90%'],

avoidLabelOverlap: false,

label: {

normal: {

show: false,

position: 'center'

},

emphasis: {

show: true,

formatter: "{B|{c}}{L|人}\n{S|{d}%}",

textStyle: {

color: 'red',

rich:{

B: {

fontSize: 40,

fontWeight: 'bolder',

lineHeight:50,

},

S:{

fontSize: 20,

},

L:{

fontSize: 20

}

},

}

}

},

labelLine: {

normal: {

show: false

}

},

data: piedata

}

]

};

var chart_pie = echarts.init(drawdom);

chart_pie.setOption(option, true);

if(curIndex == null) {

chart_pie.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: 0});

if(titleDom) {

titleDom.text = piedata[0].name;

titleDom.style.color=color[0];

}

}

else {

chart_pie.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: curIndex});

if(titleDom) {

titleDom.innerHTML = piedata[curIndex].name;

titleDom.style.color=color[curIndex];

}

setInterval(function () {

var dataLen = piedata.length;

// 取消高亮

chart_pie.dispatchAction({type: 'downplay',seriesIndex: 0,dataIndex: curIndex});

curIndex = (curIndex + 1) % dataLen;

if(titleDom) {

titleDom.innerHTML = piedata[curIndex].name;

titleDom.style.color=color[curIndex];

}

//设置高亮

chart_pie.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: curIndex});

}, 3000);

}

}

var data = [

{ value: 3108, name: '18岁以下' },

{ value: 2348, name: '19~25岁' },

{ value: 1358, name: '26~30岁' },

{ value: 1548, name: '31~40岁'},

{ value: 1548, name: '41岁以上'},

{ value: 3350, name: '年龄不详'},

];

DrawPieArea(domchart, data, mycolor, myindex, domtitle);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值