eCharts图表实现扇形和折线图代码示例

 更新时间:2024年09月26日 10:20:07   作者:gyhwjy  
本文概述了前端和后端实现数据可视化图表的步骤,前端部分涉及引入文件、设置盒子、发送请求等,最终通过ECharts初始化图形,后端则包括定义VO类、处理mapper和业务逻辑等,文中通过代码介绍的非常详细,需要的朋友可以参考下

前端步骤:

1.引入需要的文件

2.设置一个有大小的盒子

3.设置数据,创建一个方法,发送请求(分析需要的数据,统计店铺和用户的总数占比)

4.接收到数据给定义的变量接着

5.初始化就加载图形new echarts.init(document.getElementById('pieBox'))给一个变量

6.最后在myChart.setOption({})中写复制粘贴过来的东西,把定义死的数据用请求接收过来的变量赋值,并更改需要修改的地方

1.扇形

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <%--引入vue--%>
    <%--引入vue文件:必须先引入vue--%>
    <script src="https://unpkg.com/vue@2/dist/vue.js"></script>
    <%--引入axios文件--%>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <!-- 引入样式 -->
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" rel="external nofollow"  rel="external nofollow" >
    <!-- 引入组件库 -->
    <script src="https://unpkg.com/element-ui/lib/index.js"></script>
    <script src="/js/qs.min.js"></script>
    <script src="/js/echarts.min.js"></script>
</head>
<body>
<div id="app">
    <div id="pieBox" style="width: 600px; height: 400px;"></div>
</div>
<script>
    let app = new Vue({
        el: "#app",
        data: {
        },
        created() {
            this.showPie()
        },
        methods: {
            showPie() {
                // console.log(111)
                axios.get("/count/lis").then(msg => {
                    //店铺
                    console.log(msg.data.data)
                    var pieData = msg.data.data;
                    var myChart = new echarts.init(document.getElementById('pieBox'));
                    myChart.setOption({
                        title: {
                            text: '用户商家统计对比',
                            subtext: '数量比例',
                            left: 'center'
                        },
                        tooltip: {
                            trigger: 'item'
                        },
                        legend: {
                            orient: 'vertical',
                            left: 'left'
                        },
                        series: [
                            {
                                name: '投票数',
                                type: 'pie',
                                radius: '50%',
                                data: pieData,
                                emphasis: {
                                    itemStyle: {
                                        shadowBlur: 10,
                                        shadowOffsetX: 0,
                                        shadowColor: 'rgba(0, 0, 0, 0.5)'
                                    }
                                }
                            }
                        ]
                    });
                });
            }
        }
    })
</script>

</body>
</html>

后端步骤:

首先定义一个vo类,扇形图需要的参数--当作返回(泛型)类型

1.mapper、mapper.xml--求出店铺的总数量、用户的总数量

2.在impl业务实现层处理业务

3.最后在控制层调用接口层方法

2.折线图

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <%--引入vue文件:必须先引入vue--%>
    <script src="https://unpkg.com/vue@2/dist/vue.js"></script>
    <%--引入axios文件--%>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <!-- 引入样式 -->
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" rel="external nofollow"  rel="external nofollow" >
    <!-- 引入组件库 -->
    <script src="https://unpkg.com/element-ui/lib/index.js"></script>
    <script src="/js/qs.min.js"></script>
    <script src="/js/echarts.min.js"></script>
</head>
<body>
<div id="app">
    <div id="zhuBox" style="width: 800px; height: 400px;"></div>
</div>
<script>
    let app = new Vue({
        el: "#app",
        data: {
        },
        created() {
            this.showZhu()
        },
        methods: {
            //图
            showZhu(){
                axios.get("/count/th").then(msg=>{
                    var zhuData=msg.data.data;
                    var myChart = echarts.init(document.getElementById('zhuBox'));
                    myChart.setOption({
                        title: {
                            text: '店铺收入数量'
                        },
                        tooltip: {},
                        legend: {},
                        xAxis: {
                            data: zhuData.xdata
                        },
                        yAxis: {},
                        series: [
                            {
                                name: '数量',
                                type: 'bar',
                                data: zhuData.ydata
                            }
                        ]
                    });
                });
            },
        }
    })
</script>
</body>
</html>

zhuData类

1.mapper、mapper.xml

2.impl实现业务层

3.控制层

总结 

到此这篇关于eCharts图表实现扇形和折线的文章就介绍到这了,更多相关eCharts图表扇形和折线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • JS中不推荐使用的几个函数方法

    JS中不推荐使用的几个函数方法

    随着JavaScript技术的不断进步和语言的持续演化,一些曾经备受瞩目的功能逐渐变得不再那么有用,甚至被更现代、更高效的替代方案所取代,今天,我们就来一起探讨几个原生JavaScript中那些“不再那么有用”的功能与API,最好避免使用的几个函数方法
    2025-01-01
  • javascript 原型与原型链的理解及应用实例分析

    javascript 原型与原型链的理解及应用实例分析

    这篇文章主要介绍了javascript 原型与原型链的理解及应用,结合实例形式分析了javascript原型与原型链的具体原理、功能、使用方法及操作注意事项,需要的朋友可以参考下
    2020-02-02
  • ES5 模拟 ES6 的 Symbol 实现私有成员功能示例

    ES5 模拟 ES6 的 Symbol 实现私有成员功能示例

    这篇文章主要介绍了ES5 模拟 ES6 的 Symbol 实现私有成员功能,结合实例形式分析了ES5 模拟 ES6 的 Symbol 实现私有成员功能相关原理、实现方法与操作注意事项,需要的朋友可以参考下
    2020-05-05
  • JavaScript 面向对象基础简单示例

    JavaScript 面向对象基础简单示例

    这篇文章主要介绍了JavaScript 面向对象基础,结合简单实例形式分析了JavaScript面向对象程序设计中类的定义、类方法与属性相关操作技巧,需要的朋友可以参考下
    2019-10-10
  • JS实现复选框的全选和批量删除功能

    JS实现复选框的全选和批量删除功能

    本文主要介绍了JS实现复选框的全选和批量删除功能的方法代码。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-04-04
  • javascript创建页面蒙板的一些知识技巧总结

    javascript创建页面蒙板的一些知识技巧总结

    javascript创建页面蒙板的一些知识技巧总结...
    2007-08-08
  • JavaScript中的宏任务和微任务执行顺序

    JavaScript中的宏任务和微任务执行顺序

    在 JavaScript 中,宏任务和微任务是指在执行代码的过程中的两种不同的任务类型,这篇文章主要介绍了JavaScript中的宏任务和微任务执行顺序,需要的朋友可以参考下
    2022-12-12
  • ajax在js中和jQuery中的用法实例详解

    ajax在js中和jQuery中的用法实例详解

    Ajax被认为是(Asynchronous(异步) JavaScript And Xml的缩写),现在允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax,下面这篇文章主要给大家介绍了关于ajax在js中和jQuery中的用法,需要的朋友可以参考下
    2021-08-08
  • js实现table添加行tr、删除行tr、清空行tr的简单实例

    js实现table添加行tr、删除行tr、清空行tr的简单实例

    下面小编就为大家带来一篇js实现table添加行tr、删除行tr、清空行tr的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 使用javascript实现ListBox左右全选,单选,多选,全请

    使用javascript实现ListBox左右全选,单选,多选,全请

    使用javascript实现ListBox左右全选,单选,多选,全请。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-11-11

最新评论