vue饼图组件_vue2.0 自定义 饼状图 (Echarts)组件

本文介绍了如何在Vue2.0中创建一个自定义的Echarts饼图组件。组件包括了设置样式、标题、提示框键名、扇形区域名称和数据等功能,并在页面调用时传入相应参数。组件还监听了点击事件,以便将选中的扇形区域数据传递回父组件。示例展示了具体组件代码和页面调用方法。
摘要由CSDN通过智能技术生成

1.自定义  图表  组件

Echarts.vue

export default {

props: {

// 样式

echartStyle: {

type: Object,

default(){

return {}

}

},

// 标题文本

titleText: {

type: String,

default: ''

},

// 提示框键名

tooltipFormatter: {

type: String,

default: ''

},

// 扇形区域名称

opinion: {

type: Array,

default(){

return []

}

},

// 提示框标题

seriesName: {

type: String,

default: ''

},

// 扇形区域数据

opinionData: {

type: Array,

default(){

return []

}

},

},

data(){

return {

//

}

},

mounted(){

this.$nextTick(function() {

this.drawPie('myChart')

})

},

methods: {

// 监听扇形图点击

eConsole(param) {

// 向父组件传值

this.$emit("currentEchartData",param.name);

},

// 绘制饼状图

drawPie(id){

this.charts = this.$echarts.init(document.getElementById(id));

this.charts.on("click", this.eConsole);

this.charts.setOption({

title: {

text: this.titleText, // 标题文本

left: 'center'

},

tooltip : {

trigger: 'item',

formatter: "{a}
" + this.tooltipFormatter + ":{c}"

},

legend: {

bottom: 20,

left: 'center',

data: this.opinion // 扇形区域名称

},

series : [

{

name:this.seriesName, // 提示框标题

type: 'pie',

radius : '65%',

center: ['50%', '50%'],

selectedMode: 'single',

data:this.opinionData, // 扇形区域数据

itemStyle: {

emphasis: {

shadowBlur: 10,

shadowOffsetX: 0,

shadowColor: 'rgba(0, 0, 0, 0.5)'

}

}

}

]

})

}

}

}

#myChart{

width: 100%;

}

2.页面调用

Diagram.vue

返回

:echartStyle="s"

:titleText="a"

:tooltipFormatter="b"

:opinion="c"

:seriesName="d"

:opinionData="e"

v-on:currentEchartData="getEchartData"

>

import mEcharts from '../components/Echarts'

export default {

name: 'Diagram',

components: {

mEcharts

},

data(){

return {

a:'水果销售统计',

b:'销售数量',

c:['香蕉','苹果','橘子'],

d:'销售统计',

e:[

{value:3, name:'香蕉'},

{value:3, name:'苹果'},

{value:3, name:'橘子'}

],

s: {

height: ''

}

}

},

created(){

// 获取屏幕高度

this.s.height = document.documentElement.clientHeight - 44 + 'px';

},

methods: {

getEchartData(val){

console.log(val);

}

}

}

//

3.效果图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue封装echarts饼图组件可以参考以下内容。 首先,需要引入echarts组件的使用参考,可以参考这篇博客文章来学习如何使用echarts组件进行饼图的封装。 其次,在Vue的页面使用<chart>标签来放置echarts饼图组件。在data()方法定义extraOption和seriesData,这两个参数用来配置echarts饼图的选项和数据。在echarts组件的初始化,需要将extraOption和seriesData赋值为原始的配置选项和系列数据。 在js文件的default_option,可以定义一些基本的配置内容,如标题、图例、提示框、坐标轴等。 最后,导出这些配置项供饼图组件使用。通过以上的步骤,就可以对Vue进行echarts饼图组件的封装了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [vue实现echarts “9种” Pie饼图图例】的组件封装及调用](https://blog.csdn.net/weixin_50450473/article/details/122424201)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [vue使用echarts进行封装使用,提高开发效率](https://blog.csdn.net/weixin_46002223/article/details/131274952)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值