百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

8.7k star,一款超炫酷的动态可视化大屏项目

myzbx 2025-03-26 14:26 285 浏览

一、项目描述

一个基于 vue、datav、Echart 框架的大数据可视化(大屏展示)模板,提供数据动态刷新渲染、屏幕适应、内部图表自由替换、Mixins注入等功能。

主要文件介绍

文件作用/功能main.js主目录文件,引入 Echart/DataV 等文件utils工具函数与 mixins 函数等views/ index.vue项目主结构views/其余文件界面各个区域组件(按照位置来命名)assets静态资源目录,放置 logo 与背景图片assets / style.scss通用 CSS 文件,全局项目快捷样式调节assets / index.scssIndex 界面的 CSS 文件components/echart所有 echart 图表(按照位置来命名)common/...全局封装的 ECharts 和 flexible 插件代码(适配屏幕尺寸,可定制化修改)

项目动态展示

使用介绍

动态渲染图表

动态渲染图表案例为 components 目录下各个图表组件,index 文件负责数据获取和处理,chart 文件负责监听和数据渲染。

chart 文件的主要逻辑为:

Bash


<script>
  // 引入封装组件
import Echart from '@/common/echart'
export default {
  // 定义配置数据
  data(){ return { options: {}}},
  // 声明组件
  components: { Echart},
  // 接收数据
  props: {
    cdata: {
      type: Object,
      default: () => ({})
    },
  },
  // 进行监听,也可以使用 computed 计算属性实现此功能
  watch: {
    cdata: {
      handler (newData) {
        this.options ={
          // 这里编写 ECharts 配置
        }
      },
      // 立即监听
      immediate: true,
      // 深度监听
      deep: true
    }
  }
};
</script>

复用图表组件

复用图表组件案例为中间部分的 任务通过率与任务达标率 模块,两个图表类似,区别在于颜色和主要渲染数据。只需要传入对应的唯一 id 和样式,然后在复用的组件 components/echart/center/centerChartRate 里进行接收并在对应位置赋值即可。

如:在调用处 views/center.vue 里去定义好数据并传入组件

Bash
//组件调用
今日任务通过率


今日任务达标率


...
import centerChart from "@/components/echart/center/centerChartRate";

data() {
  return {
    rate: [
      {
        id: "centerRate1",
        tips: 60,
        ...
      },
      {
        id: "centerRate2",
        tips: 40,
        colorData: {
          ...
        }
      }
    ]
  }
}

请求数据

现在的项目未使用前后端数据请求,建议使用 axios 进行数据请求,在 main.js 位置进行全局配置。

axios 的 main.js 配置参考范例(因人而异)

import axios from 'axios';

//把方法放到vue的原型上,这样就可以全局使用了
Vue.prototype.$http = axios.create({
  //设置20秒超时时间
  timeout: 20000,
  baseURL: 'http://172.0.0.1:80080', //这里写后端地址
});

基于本项目的二开案例

支持地图下钻:

https://gitee.com/memeda520/IofTV-Screen

重写结构,支持响应式布局:

https://gitee.com/BigCatHome/koi-screen

开源地址

https://gitee.com/MTrun/big-screen-vue-datav

相关推荐

有哪些python库让你相见恨晚

#哪些Python库让你相见恨晚#Python的库生态非常丰富,有些库能够极大地提升开发效率,让人感到相见恨晚。以下是一些可能会让你有这种感觉的Python库:EmojiEmoji库非常有意思,但并非...

Python可视化交互库——dash

Dash是一款构建Web应用的Python低代码框架,建立在Plotly.js、React和Flask之上,将现代UI元素如下拉框、滑块和图形直接与Python代码绑定,使...

NAR | GMrepo:人类肠道宏基因组数据库

文献速递GMrepo是一个收录了253个项目,囊括了58,903个samples/runs(扩增子41,285;宏基因组17,618),横跨92种表型(健康+91疾病表型)...

Python 数据可视化 - Dash

Python以其语法简单和易用而备受青睐,近年来随着Python在数据分析、机器学习等领域的使用而引起大家的广泛关注。使用Python我们可以很容易的编写一个爬虫从互联网上获取很多数据,但是...

Python与数据可视化:Dash框架入门

Dash是一个用于创建交互式Web应用程序的Python框架,它非常适合用于数据分析和可视化的项目。Dash基于Flask、Plotly.js和React.js构建,因此可以轻松地...

手把手教你撸一个 Web 汇率计算器

作者:咕隆先森来源:Python技术前段时间刚接触到前端网页开发,但是对于刚入门的小白而言,像flask、Django等这类稍大型的框架确实不太适合,今天这个Dash是集众家之长于一体的轻量化Web...

Plotly.Blazor: 打造Blazor交互图表

在开发中,数据可视化是不可缺少的一部分。不管是仪表盘、报表系统还是数据分析平台,图表展示都很重要。介绍一个专为Blazor开发打造的开源库——Plotly.Blazor。将广受欢迎的Java...

非常牛批的可视化库Plotly

1.plotly库的相关介绍1)相关说明plotly是一个基于javascript的绘图库,plotly绘图种类丰富,效果美观;易于保存与分享plotly的绘图结果,并且可以与Web无缝集成;plot...

如何用Vue3和Plotly.js创建交互式平行坐标图

本文由ScriptEcho平台提供技术支持项目地址:传送门Vue.js中使用Plotly.js创建平行坐标图应用场景介绍平行坐标图是一种可视化高维数据集的强大技术。它可以帮助我们探索不同维度之间...

windows启动项Hkcmd,igfxTray,persistence是什么

部分电脑开机启动项中有三个名为HkcmdModule,igfxTrayModule,persistencemodule,发布者都是IntelCorporation,它们都是什么程序,可以禁止开机启...

2 Winform的GUI开发 控件的绘制

1.1控件的绘制我们需要重写Control的一个方法OnPaint()在控件里绘制一个红色的矩形protectedoverridevoidOnPaint(PaintEventArgse){...

增强影音解码能力,Intel HD Graphics 驱动更新

推出后不离不弃,Intel为产品提供更好的软件能力。很多人或许认为Intel处理器上的HDGraphics只是个堪用产品,食之无味,又不可弃之,是个拖油瓶的产品。不过Intel可不这么...

十一代酷睿轻薄本迎来首发,预售价仅为3999元

10月21日0点,机械革命S3轻薄本将迎来首发,首发价格仅为3999元。除了价格让人惊艳以外,这款高性价比的轻薄本配置非常给力。机械革命S3轻薄本采用了英特尔第十一代酷睿i5-1135G7处理器,4核...

135.C# GDI+基础-创建Graphics类对象

摘要GDI+是GDI(WindowsGraphicsDeviceInterface)的后继者,它是.NETFramework为操作图形提供的应用程序编程接口,主要用在窗体上绘制各种图形图像,可...

Intel Inside 三星笔记本 翻转跳跃二合一平板电脑大家测| 大家测

科技美学|大家测活动(第160622期)由科技美学与INTEL联合发起,INTEL提供3台三星Notebook940X3L-K02二合一电脑给「科技美学」的用户进行深度测试,价值13000...