echarts饼状图动态
时间: 2023-06-29 09:13:14 浏览: 102
动态饼状图
要实现ECharts饼状图的动态效果,可以使用ECharts自带的数据更新方法,如下所示:
1. 定义饼状图的基本配置:
```
var option = {
title: {
text: '饼状图动态效果示例',
left: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b}: {c} ({d}%)"
},
series: [
{
name: '访问来源',
type: 'pie',
radius: ['50%', '70%'],
avoidLabelOverlap: false,
label: {
normal: {
show: false,
position: 'center'
},
emphasis: {
show: true,
textStyle: {
fontSize: '30',
fontWeight: 'bold'
}
}
},
labelLine: {
normal: {
show: false
}
},
data: [
{value: 335, name: '直接访问'},
{value: 310, name: '邮件营销'},
{value: 234, name: '联盟广告'},
{value: 135, name: '视频广告'},
{value: 1548, name: '搜索引擎'}
]
}
]
};
```
2. 定义一个定时器,每隔一段时间更新数据:
```
var pieChart = echarts.init(document.getElementById('pie-chart'));
// 定义一个定时器
setInterval(function () {
// 生成新的数据
var newData = [
{value: Math.round(Math.random()*1000), name: '直接访问'},
{value: Math.round(Math.random()*1000), name: '邮件营销'},
{value: Math.round(Math.random()*1000), name: '联盟广告'},
{value: Math.round(Math.random()*1000), name: '视频广告'},
{value: Math.round(Math.random()*1000), name: '搜索引擎'}
];
// 使用ECharts自带的数据更新方法
pieChart.setOption({
series: [{
data: newData
}]
});
}, 2000);
```
在上面的代码中,我们使用了`setInterval`方法定义了一个定时器,每隔2秒钟生成一组新的数据,并使用ECharts自带的数据更新方法`setOption`更新饼状图的数据。这样就实现了ECharts饼状图的动态效果。
阅读全文