echarts绘制饼图既显示数字又显示占比
时间: 2023-10-25 12:06:14 浏览: 97
可以使用 echarts 的 formatter 属性来同时显示数字和占比。具体实现方法如下:
1. 在饼图的 series 中设置 label 属性,用于显示数字。
```
series: [
{
type: 'pie',
label: {
show: true,
formatter: '{b}: {c}'
},
data: [
{value: 335, name: 'Apple'},
{value: 310, name: 'Banana'},
{value: 234, name: 'Orange'},
{value: 135, name: 'Peach'},
{value: 1548, name: 'Grape'}
]
}
]
```
2. 在饼图的 tooltip 中设置 formatter 属性,用于显示占比。
```
tooltip: {
trigger: 'item',
formatter: '{b}: {d}%'
},
```
其中,{b} 表示数据项的名称,{c} 表示数据项的值,{d} 表示数据项的百分比。在 formatter 中,通过使用 {d}% 的形式,即可显示数据项的占比。
相关问题
echarts绘制饼图显示占比
ECharts 是一款非常强大的数据可视化库,它支持多种图表类型,包括饼图。要绘制饼图并显示占比,可以通过设置饼图的 label 属性来实现。
下面是一个简单的示例代码:
```html
<div id="chart" style="width: 600px; height: 400px;"></div>
```
```javascript
// 初始化 ECharts 实例
var myChart = echarts.init(document.getElementById('chart'));
// 配置项
var option = {
title: {
text: '访问来源',
subtext: '2021 年 4 月份',
left: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c} ({d}%)'
},
legend: {
orient: 'vertical',
left: 'left',
data: ['直接访问', '邮件营销', '联盟广告', '视频广告', '搜索引擎']
},
series: [
{
name: '访问来源',
type: 'pie',
radius: ['50%', '70%'],
avoidLabelOverlap: false,
label: {
show: true,
position: 'outside',
formatter: '{b}: {d}%'
},
emphasis: {
label: {
show: true,
fontSize: '30',
fontWeight: 'bold'
}
},
labelLine: {
show: true
},
data: [
{value: 335, name: '直接访问'},
{value: 310, name: '邮件营销'},
{value: 234, name: '联盟广告'},
{value: 135, name: '视频广告'},
{value: 1548, name: '搜索引擎'}
]
}
]
};
// 使用刚指定的配置项和数据显示图表
myChart.setOption(option);
```
在上面的代码中,我们通过设置饼图的 label 属性来显示占比,具体来说:
- `formatter: '{b}: {d}%'` 表示在标签中显示饼图数据项的名称和占比,其中 `{b}` 表示数据项的名称,`{d}` 表示数据项所占比例。
- `position: 'outside'` 表示标签放在饼图的外部。
- `labelLine: { show: true }` 表示显示标签的指向线。
通过调整上述代码中的数据和配置项,你可以绘制出不同类型的饼图,并在标签中显示占比。
echarts 3d饼图加上标识线
ECharts是一个非常流行的JavaScript数据可视化库,它支持创建各种图表,包括3D饼图。如果你想在ECharts的3D饼图上添加标识线,通常是在每个扇区之间添加一条连接线,以便更好地展示各个部分之间的关系。
以下是创建一个基本的3D饼图并添加标识线的步骤:
1. 首先,在ECharts官网下载并引入echarts.min.js文件。
2. 创建一个div元素用于放置图表,并设置其宽度和高度。
3. 使用ECharts实例化一个新的图表对象。
4. 设置图表配置,包括type属性设定为'pie'表示饼图,然后开启3D效果。
5. 在series数组中配置3D饼图的数据,以及itemStyle对象,可以在此处设置标识线的颜色、线宽等样式。
6. 添加标识线,你可以通过`emphasis`选项下的`labelLine`配置,比如设置`lineStyle`里的`show`为true,并自定义其他属性如`width`, `color`等。
示例代码如下:
```javascript
// 初始化图表
var myChart = echarts.init(document.getElementById('chart'));
// 配置项
var option = {
tooltip: {},
legend: { data: ['A', 'B', 'C'] },
xAxis: {},
yAxis: {},
zAxis: {},
series: [{
type: 'pie',
name: '各部分占比',
radius: ['30%', '70%'],
roseType: 'area',
data: [
{ value: 335, name: 'A' },
{ value: 310, name: 'B' },
{ value: 350, name: 'C' }
],
itemStyle: {
emphasis: {
labelLine: {
show: true,
lineStyle: {
color: 'red', // 标识线颜色
width: 2, // 线宽
}
}
}
}
}]
};
// 绘制图表
myChart.setOption(option);
```
阅读全文
相关推荐














