赞
踩
饼状图跟柱状图有点不一样,大部分设置是在series里面的label中进行设置,可以通过改动某些设置实现以下三种图。
- <template>
- <div id="main_pie" style="width: 100%; height: 450px"></div>
- </template>
-
- <script>
- import * as echarts from 'echarts';
-
- export default {
- name: "pie",
- data() {
- return {
- xy_data: [
- {name: '一', value: 100, value2: 190,},
- {name: '二', value: 180, value2: 110,},
- {name: '三', value: 120, value2: 170,},
- {name: '四', value: 160, value2: 160,},
- {name: '五', value: 140, value2: 130,},
- {name: '六', value: 280, value2: 240,},
- {name: '七', value: 320, value2: 300,},
- ],
- };
- },
- created() {
- this.initPie();
- },
- methods: {
- initPie() {
- this.$nextTick(() =>{
- // 基于准备好的dom,初始化echarts实例
- let myChart = echarts.init(document.getElementById('main_pie'));
- // 指定图表的配置项和数据
- let option = {
- // 全局颜色配置
- color: [
- '#c23531', '#2f4554', '#61a0a8', '#d48265', '#91c7ae', '#749f83', '#ca8622',
- ],
- // echarts标题
- title: {
- text: '饼图'
- },
- tooltip: {},
- // legend中的data一定要跟series里面的data的name保持命名一致,否则无效,不会显示legend
- legend: {
- data: this.xy_data.map(item => {
- return {
- name: item.name.concat('月'),
- };
- })
- },
- series: [
- {
- // 数据全为0也显示扇区
- stillShowZeroSum: true,
- // 是否高亮
- legendHoverLink: true,
- // 玫瑰图
- // roseType: 'area',
- name: '销量',
- // 如果有两个值,则为圆环图,第一个值为内半径,第二个值为外半径
- // radius: ['20%', '60%'],
- radius: '70%',
- // 饼状图标签
- label: {
- show: true,
- // 标签显示的位置,默认为outside
- // position: 'inside',
- // 字符串模板,可对文本标签内容进行设置
- //{a}:系列名。{b}:数据名。{c}:数据值。{d}:百分比。等等,详细见网站
- formatter: '{b}:{d}%',
- },
- // 此系列自己的调色盘。优先级高于全局颜色配置
- // color: [
- // '#dd6b66',
- // '#759aa0',
- // '#e69d87',
- // '#8dc1a9',
- // '#ea7e53',
- // '#eedd78',
- // '#73a373',
- // ],
- type: 'pie',
- data: this.xy_data.map(item => {
- return {
- name: item.name + '月',
- value: item.value
- };
- })
- }
- ]
- };
- // 使用刚指定的配置项和数据显示图表。
- myChart.setOption(option);
- })
- },
- }
- };
- </script>

基础饼图的实现效果如下:
给radius设定两个值,第一个值为内半径,第二个值为外半径,这样就实现了简单的圆环图。
在series里面加上roseType: 'area'即可实现玫瑰图的效果。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。