《从零搭建Vue3项目实战》(AI辅助搭建Vue3+ElemntPlus后台管理项目)零基础入门系列第十二篇(完结篇):数据统计功能实现

🤟致敬读者

  • 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉

📘博主相关

  • 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息

文章目录

  • 《从零搭建Vue3项目实战》(AI辅助搭建Vue3+ElemntPlus后台管理项目)零基础入门系列第十二篇(完结篇):数据统计功能实现
    • 1. 使用echarts
      • 1.1 提问ai
      • 1.2 安装echarts
    • 2. 折线图实现
      • 2.1 提示词
      • 2.2 src/views/DataStaticsView.vue
      • 2.3 页面效果
    • 3. 折线图优化
      • 3.1 src/views/DataStaticsView.vue
      • 3.2 优化后的页面效果
    • 4. 项目源码(完结)


📃文章前言

  • 🔷文章均为学习工作中整理的笔记。
  • 🔶如有错误请指正,共同学习进步。

《从零搭建Vue3项目实战》(AI辅助搭建Vue3+ElemntPlus后台管理项目)零基础入门系列第十二篇(完结篇):数据统计功能实现

从零搭建Vue3项目实战,借助AI工具辅助学习和代码生成,零基础小白亦可轻松上手实现。

以下为系列篇所有文章:
《从零搭建Vue3项目实战》零基础入门系列第一篇:开发环境准备
《从零搭建Vue3项目实战》零基础入门系列第二篇:项目创建和初始化
《从零搭建Vue3项目实战》零基础入门系列第三篇:ElementPlus引入和应用
《从零搭建Vue3项目实战》零基础入门系列第四篇:登录页面实现
《从零搭建Vue3项目实战》零基础入门系列第五篇:登录页面优化及使用AI学习代码
《从零搭建Vue3项目实战》零基础入门系列第六篇:页面跳转功能实现(Router的引入和使用)
《从零搭建Vue3项目实战》零基础入门系列第七篇:菜单栏实现
《从零搭建Vue3项目实战》零基础入门系列第八篇:菜单栏优化和阶段项目源码
《从零搭建Vue3项目实战》零基础入门系列第九篇:用户管理功能实现
《从零搭建Vue3项目实战》零基础入门系列第十篇:商品管理功能实现
《从零搭建Vue3项目实战》零基础入门系列第十一篇:订单管理功能实现
《从零搭建Vue3项目实战》零基础入门系列第十二篇(完结篇):数据统计功能实现
《从零搭建Vue3项目实战》零基础入门一篇通关(AI辅助搭建Vue3+ElemntPlus后台管理项目)

系列文章均收录在前端vue3入门实战专栏中,可订阅专栏了解更多内容


数据统计使用echarts实现,使用柱状图来分析数据

使用以折线图为例实现功能

1. 使用echarts

1.1 提问ai

如何在vue3项目中使用echarts

根据ai回答,安装echarts
打开新的终端(Terminal)窗口,执行命令安装echarts

1.2 安装echarts

npm install echarts --save

注意:如果ai给出了数据统计页面的新代码,先不管,直接看下一步继续提问ai生成折线图

2. 折线图实现

使用echarts实现折线图,展示订单与日期

2.1 提示词

你是一名资深前端开发,现在已经使用vue3+elementplus搭建了一个基础项目,需要你来实现数据统计页面DataStatisticsView.vue组件中的代码,使用echarts中的折线图显示订单和时间,样式尽量美观

生成代码如下

2.2 src/views/DataStaticsView.vue

代码如下

<template><div><div ref="chart" style="width: 100%; height: 400px;"></div></div>
</template><script setup>
import { ref, onMounted } from 'vue';
import * as echarts from 'echarts';const chart = ref(null);// 模拟订单数据
const orders = [{ time: '2023-10-01', count: 10 },{ time: '2023-10-02', count: 15 },{ time: '2023-10-03', count: 20 },{ time: '2023-10-04', count: 25 },{ time: '2023-10-05', count: 30 },{ time: '2023-10-06', count: 35 },{ time: '2023-10-07', count: 40 },
];onMounted(() => {const myChart = echarts.init(chart.value);const option = {title: {text: '订单数量统计',left: 'center',textStyle: {fontSize: 18,fontWeight: 'bold',},},tooltip: {trigger: 'axis',axisPointer: {type: 'cross',label: {backgroundColor: '#6a7985',},},},xAxis: {type: 'category',data: orders.map(order => order.time),axisLabel: {interval: 0,rotate: 45,fontSize: 12,},},yAxis: {type: 'value',name: '订单数量',nameTextStyle: {fontSize: 14,},axisLabel: {formatter: '{value} 单',},},series: [{name: '订单数量',type: 'line',data: orders.map(order => order.count),smooth: true,itemStyle: {color: '#409EFF',},areaStyle: {color: {type: 'linear',x: 0,y: 0,x2: 0,y2: 1,colorStops: [{ offset: 0, color: 'rgba(64, 158, 255, 0.5)' },{ offset: 1, color: 'rgba(64, 158, 255, 0)' },],global: false,},},},],grid: {left: '10%',right: '10%',bottom: '15%',},};myChart.setOption(option);
});
</script><style scoped></style>

2.3 页面效果

页面效果如下
在这里插入图片描述

这个模拟的数据有点不太正常,每日都比前一日多,我们修改一下数据,将后面几个订单量减少一些

3. 折线图优化

修改后的代码如下

3.1 src/views/DataStaticsView.vue

代码

<template><div><div ref="chart" style="width: 100%; height: 400px;"></div></div>
</template><script setup>
import { ref, onMounted } from 'vue';
import * as echarts from 'echarts';const chart = ref(null);// 模拟订单数据
const orders = [{ time: '2025-01-01', count: 10 },{ time: '2025-01-02', count: 15 },{ time: '2025-01-03', count: 20 },{ time: '2025-01-04', count: 50 },{ time: '2025-01-05', count: 20 },{ time: '2025-01-06', count: 35 },{ time: '2025-01-07', count: 16 },
];onMounted(() => {const myChart = echarts.init(chart.value);const option = {title: {text: '订单数量统计',left: 'center',textStyle: {fontSize: 18,fontWeight: 'bold',},},tooltip: {trigger: 'axis',axisPointer: {type: 'cross',label: {backgroundColor: '#6a7985',},},},xAxis: {type: 'category',data: orders.map(order => order.time),axisLabel: {interval: 0,rotate: 45,fontSize: 12,},},yAxis: {type: 'value',name: '订单数量',nameTextStyle: {fontSize: 14,},axisLabel: {formatter: '{value} 单',},},series: [{name: '订单数量',type: 'line',data: orders.map(order => order.count),smooth: true,itemStyle: {color: '#409EFF',},areaStyle: {color: {type: 'linear',x: 0,y: 0,x2: 0,y2: 1,colorStops: [{ offset: 0, color: 'rgba(64, 158, 255, 0.5)' },{ offset: 1, color: 'rgba(64, 158, 255, 0)' },],global: false,},},},],grid: {left: '10%',right: '10%',bottom: '15%',},};myChart.setOption(option);
});
</script><style scoped></style>

3.2 优化后的页面效果

修改后的页面效果如下
在这里插入图片描述


4. 项目源码(完结)

CSDN下载:前端 vue3 vue3入门实战 从零搭建vue3+element-plus后台管理项目 阶段2项目源码
GitHub源码:


除此之外还可以按照上面的提问让ai生成饼状图、柱状图等

以上就是数据统计功能的实现内容


📜文末寄语

  • 🟠关注我,获取更多内容。
  • 🟡技术动态、实战教程、问题解决方案等内容持续更新中。
  • 🟢《全栈知识库》技术社区,集结全栈各领域开发者,期待你的加入。
  • 🔵​加入开发者的《专属社群》,分享交流,技术之路不再孤独,一起变强。
  • 🟣点击下方名片获取更多内容🍭🍭🍭👇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/901180.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

研究嵌入式软件架构时遇到的初始化堆栈溢出问题

文章目录 2025年4月10日新增分析PC寄存器指针值排查问题map文件设计到的知识点1. **.bss 段&#xff08;Block Started by Symbol&#xff09;**2. **.data 段**3. **.text 段**4. **.heap 段**5. **.stack 段**6. **.rodata 段&#xff08;只读数据段&#xff09;**7. **.init…

软件架构评估两大法:ATAM 和 SAAM 的对比与实践

架构权衡分析方法&#xff08;ATAM&#xff09;和软件架构分析方法&#xff08;SAAM&#xff09;是软件架构评估领域中非常重要的两种方法&#xff0c;以下为你详细介绍&#xff1a; 一、架构权衡分析方法&#xff08;ATAM&#xff09; 1.背景与起源&#xff1a;ATAM 是由卡耐…

Python爬虫-爬取全球股市涨跌幅和涨跌额数据

前言 本文是该专栏的第52篇,后面会持续分享python爬虫干货知识,记得关注。 本文中,笔者将基于Python爬虫,实现批量采集全球股市行情(亚洲,美洲,欧非,其他等)的各股市“涨跌幅”以及“涨跌额”数据。 具体实现思路和详细逻辑,笔者将在正文结合完整代码进行详细介绍。…

电流互感器的两相星形接线的建模与仿真

微♥“电击小子程高兴的MATLAB小屋”获取巨额优惠 1.模型简介 本仿真模型基于MATLAB/Simulink&#xff08;版本MATLAB 2016Rb&#xff09;软件。建议采用matlab2016 Rb及以上版本打开。&#xff08;若需要其他版本可联系代为转换&#xff09; 2.仿真模型 3.仿真结果 3.1一次…

详解 kotlin 相对 Java 特有的关键字及使用

文章目录 1. val 和 var2. fun3. when4. is 和 !is5. lateinit6. by7. reified8. companion 本文首发地址&#xff1a;https://h89.cn/archives/366.html 最新更新地址&#xff1a;https://gitee.com/chenjim/chenjimblog Kotlin 在兼容Java的基础上&#xff0c;引入了许多特有…

国标GB28181视频平台EasyCVR如何搭建汽车修理厂远程视频网络监控方案

一、背景分析 近年我国汽车保有量持续攀升&#xff0c;与之相伴的汽车保养维修需求也逐渐提高。随着社会经济的发展&#xff0c;消费者对汽车维修服务质量的要求越来越高&#xff0c;这使得汽车维修店的安全防范与人员管理问题面临着巨大挑战。 多数汽车维修店分布分散&#…

linux RCU技术

RCU&#xff08;Read-Copy-Update&#xff09;是Linux内核中的一种同步机制&#xff0c;用于在多核处理器环境中实现无锁读取和延迟更新。Linux RCU&#xff08;Read-Copy-Update&#xff09;技术通过一种高效的同步机制来处理并发冲突&#xff0c;确保在多核环境中读者和写者对…

【笔记ing】AI大模型-02开发环境搭建

按实验需求合理选用实例规格&#xff0c;一般&#xff1a;模型开发阶段&#xff1a;使用最低算力2U8GB CPU。训练或推理阶段&#xff1a;切换至GPU规格&#xff0c;用完及时关闭算力环境&#xff0c;且切回最低算力规格。 每次实验结束手动关闭实例。使用ModelArts公有云资源。…

Python——numpy测试题目

题目&#xff1a; 生成一个2行3列随机整数二维数组a使用Numpy方法对&#xff08;1&#xff09;中数组a进行整体求积使用Numpy方法对&#xff08;1&#xff09;中数组a进行求每列最大值索引定义一个NumPy一维数组 b&#xff0c;元素为 1 到 10 的整数获取&#xff08;4&#x…

系分论文《论面向服务开发方法在设备租赁行业的应用》

系统分析师论文系列 【摘要】 2022年5月&#xff0c;我司承接某工程机械租赁企业"智能租赁运营管理平台"建设项目&#xff0c;我作为系统分析师主导系统架构设计。该项目需整合8大类2000余台设备资产&#xff0c;覆盖全国15个区域运营中心与300家代理商&#xff0c;实…

Unity UI中的Pixels Per Unit

Pixels Per Unit在图片导入到Unity的时候&#xff0c;将图片格式设置为Sprite的情况下会出现&#xff0c;其意思是精灵中的多少像素对应世界中的一个单位&#xff0c;默认是100 1. 对于在世界坐标中 在世界坐标中&#xff0c;一般对于Sprite的应用是Sprite Renderer组件 使…

Boost Graph Library (BGL) 介绍与使用示例

Boost Graph Library (BGL) 介绍与使用示例 Boost Graph Library (BGL) 是 Boost 库中用于图论计算的模块&#xff0c;提供了处理图数据结构的通用接口和多种图算法实现。 BGL 主要特性 提供多种图表示方式&#xff1a;邻接表、邻接矩阵等包含常用图算法&#xff1a;DFS、BF…

opencv(C++)操作图像像素

文章目录 添加噪点的案例图像像素值1、访问图像属性2、像素访问方法 at灰度图像彩色图像 3、OpenCV 的向量类型4、 图像传递方式 The cv::Mat_ 类1、作用及优点2、使用 cv::Mat_ 简化像素访问 用指针扫描图像背景算法案例原理1. 图像数据存储的基本结构2、行填充&#xff08;Pa…

Python实现贪吃蛇一

贪吃蛇是一款经典的小游戏&#xff0c;最近尝试用Python实现它。先做一个基础版本实现以下目标&#xff1a; 1、做一个按钮&#xff0c;控制游戏开始 2、按Q键退出游戏 3、右上角显示一个记分牌 4、随机生成一个食物&#xff0c;蛇吃到食物后长度加一&#xff0c;得10分 5、蛇碰…

《AI大模型应知应会100篇》第13篇:大模型评测标准:如何判断一个模型的优劣

第13篇&#xff1a;大模型评测标准&#xff1a;如何判断一个模型的优劣 摘要 近年来&#xff0c;大语言模型&#xff08;LLMs&#xff09;在自然语言处理、代码生成、多模态任务等领域取得了显著进展。然而&#xff0c;随着模型数量和规模的增长&#xff0c;如何科学评估这些模…

工会考试重点内容有哪些:核心考点与备考指南

工会考试重点内容总结&#xff1a;核心考点与备考指南 工会考试主要考察考生对工会法律法规、职能职责、实务操作等内容的掌握程度&#xff0c;适用于企事业单位工会干部、社会化工会工作者等岗位的选拔。本文梳理工会考试的核心考点&#xff0c;帮助考生高效备考。 一、工会…

Verilog学习-1.模块的结构

module aoi(a,b,c,d,f);/*模块名为aoi&#xff0c;端口列表a、b、c、d、f*/ input a,b,c,d;/*模块的输入端口为a,b,c,d*/ output f;;/*模块的输出端口为f*/ wire a,b,c,d,f;/*定义信号的数据类型*/ assign f~((a&b)|(~(c&d)));/*逻辑功能描述*/ endmoduleveirlog hdl 程…

MySQL数据库备份与恢复详解

在数据库管理中&#xff0c;数据的备份与恢复是至关重要的一环。对于MySQL数据库&#xff0c;定期备份不仅能防止数据丢失&#xff0c;还能在发生故障时快速恢复数据库。本文将详细介绍MySQL数据库的备份与恢复方法&#xff0c;覆盖所有常用备份和恢复方式&#xff0c;帮助大家…

FFMPEG和opencv的编译

首先 sudo apt-get update -qq && sudo apt-get -y install autoconf automake build-essential cmake git-core libass-dev libfreetype6-dev libgnutls28-dev libmp3lame-dev libsdl2-dev libtool libva-dev libvdpau-dev libvorbis-de…

华为机试—最大最小路

题目 对于给定的无向无根树&#xff0c;第 i 个节点上有一个权值 wi​ 。我们定义一条简单路径是好的&#xff0c;当且仅当&#xff1a;路径上的点的点权最小值小于等于 a &#xff0c;路径上的点的点权最大值大于等于 b 。 保证给定的 a<b&#xff0c;你需要计算有多少条简…