3D echarts饼图

本文介绍如何在Vue项目中整合ECharts库,特别是如何创建引人注目的3D饼图效果。首先在项目的dependencies中添加ECharts依赖,然后在前端代码部分编写实现3D饼图的Vue组件。
摘要由CSDN通过智能技术生成

vue中引入依赖

dependencies中引入

"echarts-gl": "^1.1.2",

在这里插入图片描述

前端代码部分

    drawLine3(id) {
   
      this.charts3 = this.$echarts.init(document.getElementById(id))
      // eslint-disable-next-line no-unused-vars
      this.personChartListData =
    [{
   
      name: 'itema项目A',
      value: 666
    }, {
   
      name: 'itemb项目B',
      value: 1570
    }]

      const colorList = ['#00d8ff', '#018ef1', '#f8bc87', '#ffa130', '#c23531']
      const pieData = []
      for (let i = 0; i < this.personChartListData.length; i++) {
   
        const item = {
   
          name: this.personChartListData[i].name,
          value: this.personChartListData[i].value,
          itemStyle: {
   
            color: colorList[i]
          }
        }
        pieData.push(item)
      }
      var option = this.getPie3D(pieData, 0.59)
      this.charts3.setOption(option)
    },
    getPie3D(pieData, internalDiameterRatio) {
   
      debugger
      const series = []
      let sumValue = 0
      let startValue = 0
      let endValue = 0
      const legendData = []
      const k =
        typeof internalDiameterRatio !== 'undefined'
          ? (1 - internalDiameterRatio) / (1 + internalDiameterRatio)
          : 1 / 3

      // 为每一个饼图数据,生成一个 series-surface 配置
      for (let i = 0; i < pieData.length; i++) {
   
        sumValue += pieData[i].value

        const seriesItem = {
   
          name: typeof pieData[i].name === 'undefined'
            
ECharts是一个基于JavaScript的开源可视化库,用于构建交互式的数据可视化图表。它提供了丰富的图表类型,包括饼图,并且支持3D立体效果。 要在ECharts中创建饼图并添加3D立体效果,你可以按照以下步骤进行操作: 1. 引入ECharts库:在HTML文件中引入ECharts库的JavaScript文件。 ```html <script src="https://cdn.jsdelivr.net/npm/echarts@5.1.2/dist/echarts.min.js"></script> ``` 2. 创建一个容器:在HTML文件中创建一个用于显示图表的容器。 ```html <div id="chartContainer" style="width: 600px; height: 400px;"></div> ``` 3. 初始化图表:在JavaScript代码中初始化一个ECharts实例,并指定容器的ID。 ```javascript var chart = echarts.init(document.getElementById('chartContainer')); ``` 4. 配置饼图数据:设置饼图的数据和样式。 ```javascript var option = { series: [{ type: 'pie', radius: '50%', data: [ {value: 335, name: '数据1'}, {value: 310, name: '数据2'}, {value: 234, name: '数据3'}, {value: 135, name: '数据4'}, {value: 1548, name: '数据5'} ], label: { show: true, formatter: '{b} : {c} ({d}%)' }, emphasis: { label: { show: true, fontSize: '16', fontWeight: 'bold' } } }] }; ``` 在上面的代码中,`data`数组中的每个对象表示一个饼图的数据项,`name`表示数据项的名称,`value`表示数据项的值。`label`用于设置饼图上的标签显示样式,`emphasis`用于设置鼠标悬停时的样式。 5. 设置3D效果:为了给饼图添加3D立体效果,需要在`series`中添加`globe`属性,并设置其值为`true`。 ```javascript option.series.globe = true; ``` 6. 渲染图表:将配置应用到图表实例中,并渲染出来。 ```javascript chart.setOption(option); ``` 以上就是在ECharts中创建饼图并添加3D立体效果的基本步骤。你可以根据自己的需求进一步调整配置和样式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值