echarts简单实现饼图

本文介绍了如何利用Echarts库快速实现饼图的展示,包括引入Echarts库、配置HTML以及加载数据的步骤。适合初学者入门,通过官方文档链接可深入学习更多Echarts特性。

系列文章目录


前言

各位看官觉得不错!请三连

一、echarts得特性

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

1.引自官方文档 https://echarts.apache.org/zh/feature.html

二、使用步骤

1.引入echarts

直接引入:

 <!-- 引入 echarts.js -->
	<script src="https://cdn.bootcss.com/echarts/4.2.1-rc1/echarts.min.js"></script>

1.1 注: 如果使用的是脚手架搭建的项目的话,可以使用npm install echarts – save进行安装

2.HTML

id -> 获取标签得标识也是存放图饼得DOM
style -> 样式
 <div id="figureofbread" style="width: 600px;height:400px;"></div>

3.读入数据

 <script type="text/javascript">
                // 基于准备好的dom,初始化echarts实例
                var figureofbread= echarts.init(document.getElementById('figureofbread'));
                option = {
                    title: {
                        text: '某站点用户访问来源',
                        subtext: '纯属虚构',
                        left: 'center'
                    },
                    tooltip: {
                        trigger: 'item',
                        formatter: '{a} <br/>{b} : {c} ({d}%)'
                    },
                    legend: {
                        orient: 'vertical',
                        left: 'left',
                        data: ['直接访问', '邮件营销', '联盟广告', '视频广告', '搜索引擎']
                    },
                    series: [
                        {
                            name: '访问来源',
                            type: 'pie',
                            radius: '55%',
                            center: ['50%', '60%'],
                            data: [
                                {value: 335, name: '直接访问'},
                                {value: 310, name: '邮件营销'},
                                {value: 234, name: '联盟广告'},
                                {value: 135, name: '视频广告'},
                                {value: 1548, name: '搜索引擎'}
                            ],
                            emphasis: {
                                itemStyle: {
                                    shadowBlur: 10,
                                    shadowOffsetX: 0,
                                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                                }
                            }
                        }
                    ]
                };
                
 			 // 使用刚指定的配置项和数据显示图表。
                figureofbread.setOption(option);

三、效果

在这里插入图片描述

总结

如需深入echarts学习可自行前往官方学习

### 使用 ECharts 实现 3D 立体效果的 为了实现具有立体效果的,可以利用 `echarts` 和其扩展包 `echarts-gl` 来完成这一目标。这两个工具共同提供了一个强大的平台来构建复杂的三维形[^2]。 #### 安装依赖项 首先,在项目环境中安装必要的软件包。对于 Vue 或其他 JavaScript 应用程序来说,这涉及到更新 `package.json` 文件中的依赖关系并执行相应的命令来进行安装: ```json { "dependencies": { "echarts": "^5.1.2", "echarts-gl": "^1.1.0" } } ``` 接着运行如下命令以确保所有必需组件都被正确下载到本地环境当中: ```bash npm install echarts-gl@1.1.0 --save ``` #### 创建基本配置对象 一旦完成了上述准备工作之后,则可以通过定义一个简单JSON 配置结构作为输入参数传递给 ECharts 的初始化函数。下面给出了一段用于生成带阴影和倾斜角度设置的基础代码片段: ```javascript var chartDom = document.getElementById('main'); var myChart = echarts.init(chartDom); var option; option = { title: { text: '3D Pie Chart Example', subtext: '', left: 'center' }, tooltip: { trigger: 'item' }, legend: { orient: 'vertical', left: 'left' }, series: [ { name: 'Access From', type: 'pie', radius: ['40%', '70%'], avoidLabelOverlap: false, itemStyle: { borderRadius: 10, borderColor: '#fff', borderWidth: 2 }, emphasis: { label: { show: true, fontSize: '20', fontWeight: 'bold' } }, labelLine: { show: true }, data:[ {value:1048, name:'Search Engine'}, {value:735, name:'Direct'}, {value:580, name:'Email'}, {value:484, name:'Union Ads'}, {value:300, name:'Video Ads'} ] } ], // Enable 3D effect by adding this property. renderer: 'canvas', }; if (option && typeof option === 'object') { myChart.setOption(option); } // Add some extra styles to make it look more three-dimensional. myChart.getZr().on('rendered', function () { var group = myChart._zr.storage.getTopGroup(); group.traverse(function (el) { if (el.type === 'sector') { el.style.shadowBlur = 10; el.style.shadowColor = 'rgba(0, 0, 0, 0.3)'; el.shape.r0 -= Math.random() * 5; // Random inner radius adjustment for depth perception el.shape.cx += Math.sin(Math.PI / 4); // Shift center point slightly along X axis el.shape.cy -= Math.cos(Math.PI / 4); // And Y axis as well } }); }); ``` 这段脚本不仅设置了常规属性如标题、提示框以及标签样式等;还特别引入了渲染器选项 (`renderer`) 并指定了画布模式以便支持更高级别的视觉特效处理。此外,在表绘制完成后进一步调整各个扇区元素的位置与外观特性,从而营造出更加逼真的空间层次感。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值