vue下使用Echarts5绘制基础图表

news/2024/11/30 20:33:57/

项目使用Vue3加Echarts5绘制的基本图表,图表自适应浏览器窗口大小 先上图,大屏小屏都可完美展示,纯属练手

一 先上图

1.任意缩放窗口的大小在这里插入图片描述
2.平板
在这里插入图片描述
3.电脑

4.饼图
在这里插入图片描述

5.折线图
折线图

二 后上代码

<script lang="ts">
import {defineComponent,watch,getCurrentInstance,onMounted} from 'vue'
import * as echarts from 'echarts';
import { useUserStore } from  '@/store/app.ts'export default defineComponent({name: "index",setup() {const user = useUserStore()const { $echarts } = getCurrentInstance().appContext.config.globalPropertieswatch(()=>user.isCollapse,(newV,oldV)=>{console.log(oldV,newV,"111")setTimeout(()=>{myChart.resize()},300)})onMounted(() => {const  myChart = echarts.init(document.getElementById('charts'))const  clockCharts = echarts.init(document.getElementById('clockCharts'))const  radar = echarts.init(document.getElementById('radar'))const  scatter = echarts.init(document.getElementById('scatter'))window.addEventListener('resize', () => {myChart.resize()clockCharts.resize()radar.resize()scatter.resize()})scatter.setOption({xAxis: {},yAxis: {},series: [{symbolSize: 20,data: [[10.0, 8.04],[8.07, 6.95],[13.0, 7.58],[9.05, 8.81],[11.0, 8.33],[14.0, 7.66],[13.4, 6.81],[10.0, 6.33],[14.0, 8.96],[12.5, 6.82],[9.15, 7.2],[11.5, 7.2],[3.03, 4.23],[12.2, 7.83],[2.02, 4.47],[1.05, 3.33],[4.05, 4.96],[6.03, 7.24],[12.0, 6.26],[12.0, 8.84],[7.08, 5.82],[5.02, 5.68]],type: 'scatter'}]})radar.setOption( {title: {text: 'Proportion of Browsers',subtext: 'Fake Data',top: 10,left: 10},tooltip: {trigger: 'item'},legend: {type: 'scroll',bottom: 10,data: (function () {var list = [];for (var i = 1; i <= 28; i++) {list.push(i + 2000 + '');}return list;})()},visualMap: {top: 'middle',right: 10,color: ['red', 'yellow'],calculable: true},radar: {indicator: [{ text: 'IE8-', max: 400 },{ text: 'IE9+', max: 400 },{ text: 'Safari', max: 400 },{ text: 'Firefox', max: 400 },{ text: 'Chrome', max: 400 }]},series: (function () {var series = [];for (var i = 1; i <= 28; i++) {series.push({type: 'radar',symbol: 'none',lineStyle: {width: 1},emphasis: {areaStyle: {color: 'rgba(0,250,0,0.3)'}},data: [{value: [(40 - i) * 10,(38 - i) * 4 + 60,i * 5 + 10,i * 9,(i * i) / 2],name: i + 2000 + ''}]});}return series;})()})clockCharts.setOption({tooltip: {formatter: '{a} <br/>{b} : {c}%'},series: [{name: 'Pressure',type: 'gauge',detail: {formatter: '{value}'},data: [{value: 60,name: '分数'}]}]})// 绘制图表myChart.setOption({title: {text: 'ECharts 入门示例'},tooltip: {},xAxis: {data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']},yAxis: {},series: [{name: '销量',type: 'bar',data: [5, 20, 36, 10, 10, 20]}]})})return {}},})
</script><template><div style="display: flex"><div id="charts" style="width: 50%; height: 400px ;flex: 1"></div><div id="clockCharts" style="width: 50%; height: 400px;flex: 1"></div></div><div style="display: flex"><div id="radar" style="width: 50%; height: 400px ;flex: 1"></div><div id="scatter" style="width: 50%; height: 400px;flex: 1"></div></div>
</template><style scoped lang="less"></style>

http://www.ppmy.cn/news/1205493.html

相关文章

【Springboot】Springboot引入JWT实现登录校验以及常见的错误解决方案

文章目录 前言一、JWT简单介绍二、token校验设计思路三、使用步骤Springboot部署JWT引入依赖&#xff1a;创建登录实体类后端&#xff1a;LoginController.java路由守卫函数 四、问题 前言 项目版本&#xff1a; 后端&#xff1a; Springboot 2.7、 Mybatis-plus、Maven 3.8.1…

【使用python写一段代码将pdf文件转换为word文件】

突然有一个需求 就是将一份老板发的PDF文件&#xff0c;转换为Word文档&#xff0c;发现要么收费&#xff0c;要么就是有水印&#xff0c;更有甚者需要将转换收费&#xff08;美其名曰就是需要开会员&#xff09;&#xff0c;那能惯着他吗 开整&#xff01; 1.使用python写一段…

python使用pytest接口自动化测试的使用

这篇文章主要介绍了python使用pytest接口自动化测试的使用&#xff0c;文中通过示例代码介绍的非常详细&#xff0c;对大家的学习或者工作具有一定的参考学习价值&#xff0c;需要的朋友们下面随着小编来一起学习学习吧 简单的设计思路 利用pytest对一个接口进行各种场景测试…

opengauss权限需求

创建角色 "u_rts" 并授予对数据库 "rts_opsdb" 的只读权限&#xff1a; CREATE ROLE u_rts LOGIN PASSWORD Cloud1234; GRANT CONNECT ON DATABASE rts_opsdb TO u_rts; GRANT USAGE ON SCHEMA public TO u_rts; GRANT SELECT ON ALL TABLES IN SCHEMA pub…

【Linux基础IO篇】用户缓冲区、文件系统、以及软硬链接

【Linux基础IO篇】用户缓冲区、文件系统、以及软硬链接 目录 【Linux基础IO篇】用户缓冲区、文件系统、以及软硬链接深入理解用户缓冲区缓冲区刷新问题缓冲区存在的意义 File模拟实现C语言中文件标准库 文件系统认识磁盘对目录的理解 软硬链接软硬链接的删除文件的三个时间 作者…

一种libuv实现websockets服务的解决方案

方法是libuv用多事件循环来驱动。说起来容易&#xff0c;做起来还是比下面的方法更容易&#xff1a; 上图是某位网友的方法代表子大部分网络资料。此方法对部署不友好&#xff0c;因为软件仓库提供的libwebsockets是不能用了。如何简化部署&#xff0c;利用好现有的软件仓库呢&…

Linux常用指令(九)——软件安装

Linux软件安装 9.1 软件安装9.2 软件升级9.3 软件卸载9.4 软件搜索9.5 使用dbkg本地安装deb软件包9.6 查看已安装软件包的安装目录 更加完整的Linux常用指令 9.1 软件安装 sudo apt update # 更新软件包列表 sudo apt install 软件包名 # 安装软件sudo yum install 软件包名…

详细创建Prism架构wpf项目

方案一&#xff1a; 1.创建一个普通wpf项目 2、安装NuGet包&#xff1a;Prism.DryIoc 3、App.xaml.cs中: 将原本的父类Application改为&#xff1a;PrismApplication&#xff0c;并且实现抽象类 CreateShell方法中写上&#xff1a;”return Container.Resolve<MainWindow>…