首页 前端知识 基于VUE Echarts 实现可视化数据大屏监控系统可视化

基于VUE Echarts 实现可视化数据大屏监控系统可视化

2024-02-01 12:02:31 前端知识 前端哥 410 178 我要收藏

前言

🚀 基于 vue、datav、Echart 框架的大数据可视化(大屏展示)源码,基于VUE+Echarts 制作,实现大数据可视化。通过 vue 组件实现数据动态刷新渲染,内部图表可自由替换。部分图表使用 DataV 自带组件,可自由进行更改, 可以在此基础上重新开发。

本项目中使用的是echarts图表库,ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。


文章目录
  • ​​前言​​
  • ​​一、Echart是什么​​
  • ​​二、ECharts入门教程​​
  • ​​三、作品演示​​
  • ​​四、代码实现​​
  • ​​core.vue​​
  • ​​main.js​​
  • ​​App.vue​​
  • ​​五、更多干货​​

一、Echart是什么

ECharts是一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表。

二、ECharts入门教程

​​5 分钟上手ECharts​​


三、作品演示

基于VUE + Echarts 实现可视化数据大屏监控系统可视化_ide


四、代码实现

core.vue

<!-- Core -->
<template>
<div class='core'>
<left-side />
<Main />
<right-side />
</div>
</template>

<script>// 这里可以导入其他文件(比如:组件,工具js,第三方插件js,json文件,图片文件等等)
// 例如:import 《组件名称》 from '《组件路径》';
import Main from './Main'
import LeftSide from './LeftSide'
import RightSide from './RightSide'
export default {
// import引入的组件需要注入到对象中才能使用
components: {
Main,
LeftSide,
RightSide
},
data () {
// 这里存放数据
return {

}
},
// 监听属性 类似于data概念
computed: {},
// 监控data中的数据变化
watch: {},
// 方法集合
methods: {

},
// 生命周期 - 创建完成(可以访问当前this实例)
created () {

},
// 生命周期 - 挂载完成(可以访问DOM元素)
mounted () {

},
beforeCreate () { }, // 生命周期 - 创建之前
beforeMount () { }, // 生命周期 - 挂载之前
beforeUpdate () { }, // 生命周期 - 更新之前
updated () { }, // 生命周期 - 更新之后
beforeDestroy () { }, // 生命周期 - 销毁之前
destroyed () { }, // 生命周期 - 销毁完成
activated () { } // 如果页面有keep-alive缓存功能,这个函数会触发
}</script>
<style lang='scss' scoped>@import url(); 引入公共css类
.core {
display: flex;
flex-shrink: 0;
margin: 0 1.6vw;
}</style>

main.js

//    .
import Vue from 'vue'
import App from './App.vue'
import dataV from '@jiaminghi/data-view'
import 'view-design/dist/styles/iview.css'
import './assets/common.scss' // 公共样式
import './assets/img/icon/iconfont.css' // icon
import echarts from 'echarts'
import { Button, Table, Alert, Col, Row, Icon, CheckboxGroup, Checkbox, Spin, Message } from 'view-design'
import store from './store'
import axios from 'axios'
axios.defaults.baseURL = process.env.NODE_ENV === 'development' ? '//localhost:8090/' : '/'
// axios.defaults.baseURL = process.env.NODE_ENV === 'development' ? '//ev.sz-rcdxny1.com/' : '/'

// 全局引入
Vue.prototype.$echarts = echarts
Vue.prototype.$Message = Message
Vue.prototype.$axios = axios
Vue.component('Button', Button)
Vue.component('Table', Table)
Vue.component('Alert', Alert)
Vue.component('Row', Row)
Vue.component('i-col', Col)
Vue.component('Icon', Icon)
Vue.component('CheckboxGroup', CheckboxGroup)
Vue.component('Checkbox', Checkbox)
Vue.component('Spin', Spin)
Vue.use(dataV)

Vue.config.productionTip = false

new Vue({
store,
render: h => h(App)
}).$mount('#app')

App.vue

<template>
<div id="app">
<Index />
</div>
</template>

<script>import Index from './view/index.vue'

export default {
name: 'app',
components: {
Index
}
}</script>

<style lang="scss">#app {
font-family: "Microsoft YaHei", "Avenir", Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 100%;
height: 100%;
}</style>

转载请注明出处或者链接地址:https://www.qianduange.cn//article/1047.html
标签
ecmascript
评论
发布的文章

Ajax用法总结

2024-02-14 09:02:07

JQuery之jsTree树形插件

2024-02-14 09:02:01

Why React Doesn‘t Need jQuery?

2024-02-14 09:02:00

jQuery模板字符串

2024-02-14 09:02:58

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!