前端实现自适应屏幕数据可视化大屏(vue + v-scale-screen组件 + dataV组件)

这篇具有很好参考价值的文章主要介绍了前端实现自适应屏幕数据可视化大屏(vue + v-scale-screen组件 + dataV组件)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言
目前市面上有很多付费的数据可视化平台,作为一个代码编程人员,为啥不自己搞一套呢,不仅自己可以增加自己的技能,也可以减少开发成本,何乐而不为呢?
写这篇文章,一方面工作有需求要实现数据可视化大屏,另一方面当然现在也有很多场景都用到数据可视化大屏,如报告总结、数据跟踪等等,在此总结分享给大家,写的不好的地方欢迎指出批评,谢谢。

什么是数据可视化的大屏

众所周知, 未来的数据可视化趋势已成为了必然性,越来越多的企业、政府等的应用场景应用都会普及 ,销售、教育、医疗、贸易等行业领域也涉及广泛 ,根据实时的监控数据,把最新的数据展现在大屏幕上,清楚地看到自己想要看到的数据,同时根据这些数据做出决策的调整。

数据可视化是指通过图表、图形、地图等视觉要素来表现数据中包含的信息的倾向、异常和模式。简而言之,数据可视化是用图形表达数据和信息。

数据可视化大屏幕的优点

1、全面认识数据,是数据更直观清晰
2、支持自由布局
3、低代码开发,轻松搭建

在这我用了vue + v-scale-screen组件 + dataV组件来开发这个功能,也可以用react + r-scale-screen + dataV组件来实现,v-scale-screen和r-scale-screen是大屏自适应容器组件,分别基于VUE框架的和react框架的,如果没有那么多复杂的场景可不考虑使用此组件。

v-scale-screen
大屏自适应容器组件,可用于大屏项目开发,实现屏幕自适应,可根据宽度自适应,高度自适应,和宽高等比例自适应,全屏自适应(会存在拉伸问题),使用时候请根据VUE的版本安装对应的版本,详请阅读v-scale-screen文档。

dataV
大屏可视化组件,具有多种类型的组件可供使用。推荐使用谷歌浏览器,其他浏览器有兼容问题。
使用时注意宽高异常和状态更新的问题。详情请阅读dataV文档。

宽高异常
组件的默认宽高都是100%,可以根据父容器宽高进行自适应,但在某些情况下组件宽高可能表现异常,这种情况一般是因为组件的父容器宽高发生了变化,而组件没有侦知这一变化,你可以在组件上绑定key值,在更改父容器宽高且页面完成重绘后(使用$nextTick),更新key值,使组件强制刷新,以获取正确宽高。

状态更新
避免你的组件更新了数据后,状态却不刷新,也就是没变化,请务必看这里
组件props均未设置deep监听,刷新props时,请直接生成新的props对象(基础数据类型除外),或完成赋值操作后使用ES6拓展运算符生成新的props对象(this.someProps = { …this.someProps })。

首先你得有一个VUE的环境,这里就不过多介绍和安装VUE环境了,直接跳过这一步,然后安装v-scale-screen大屏自适应容器组件。

npm install v-scale-screen 或 yarn add v-scale-screen

在 vue2 中我们使用插件方式导出,故而需要 Vue.use() 进行注册

// main.js
import Vue from 'vue'
import VScaleScreen from 'v-scale-screen'

Vue.use(VScaleScreen)
<template>
  <v-scale-screen width="1920" height="1080">
    <div>
      你想添加的模块
    </div>
  </v-scale-screen>
</template>

Vue3 or Vue2.7 版本

<template>
  <v-scale-screen width="1920" height="1080">
    <div>
      你想添加的模块
    </div>
  </v-scale-screen>
</template>

<script>
import { defineComponent } from 'vue'
import VScaleScreen from 'v-scale-screen'

export default defineComponent({
  name: 'Demo',
  components: {
    VScaleScreen
  }
})
</script>

注:使用时请将 body 样式设置为 overflow: hidden; 注:使用时请将 body 样式设置为 overflow: hidden; 注:使用时请将 body 样式设置为 overflow: hidden;这里的width和height分别是大屏的宽度和高度

然后我们安装一下dataV组件

npm install @jiaminghi/data-view 或 yarn add @jiaminghi/data-view

使用

// 将自动注册所有组件为全局组件
import dataV from '@jiaminghi/data-view'

Vue.use(dataV)

按需引入

import { borderBox1 } from '@jiaminghi/data-view'

Vue.use(borderBox1)

有的朋友就会问了,为啥安装了dataV组件还要安装v-scale-screen组件呢?dataV不也可以全屏展示自动进行缩放处理吗。这里要解释一波,一个原因是v-scale-screen的自适应的效果比较好,还有就是dataV的局限性。dataV建议在全屏容器内使用百分比搭配flex进行布局,以便于在不同的分辨率下得到较为一致的展示效果。使用前请注意将body的margin设为0,否则会引起计算误差,全屏后不能完全充满屏幕。但是用vue + v-scale-screen包裹一下就不会出现这种问题。这里不推荐使用dataV的全屏容器

总体的代码片段文章来源地址https://www.toymoban.com/news/detail-713592.html

  <v-scale-screen width="1920" height="1080">
    <div>
      <dv-border-box-1 :color="['red', 'green']" backgroundColor="blue" >dv-border-box-1</dv-border-box-1>
      <dv-decoration-1 :color="['red', 'green']" />
      你想添加的dataV展示组件。。。
    </div>
  </v-scale-screen>

到了这里,关于前端实现自适应屏幕数据可视化大屏(vue + v-scale-screen组件 + dataV组件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端可视化数据大屏(1)

    效果图 技术架构:datav,vue2,echarts 我们一步一步的来实现一个简单的可视化数据大屏,开始吧!!         太简单了,百度上可以搜索,我这里就不多说了,把router装好就行         2.1在控制台上输入命令下载datav         2.2 将datav的组件注册为全局组件              

    2024年02月06日
    浏览(54)
  • 大数据前端可视化大屏--前端开发之路

    从2016年开始接触可视化方向,一直想写一篇文章回顾一下这几年踩过的坑,接下来的这段时间里我会不定时的给大家分享一些可视化方面的经验和感悟,发出来跟大家一块分享一下、一起讨论讨论、共同学习进步。 这篇文章作为开端,之后会不定时的发出一系列的采坑记录

    2023年04月09日
    浏览(51)
  • vue大屏可视化自适应完美方案

    在做大屏可视化项目的时候,一般设计稿会设计成1920*1080,但是页面写死1920*1080在2k、4k等分辨率的屏幕下是不适配的。如果页面能够根据屏幕比例进行等比缩放那就好了。 什么?不知道屏幕比例?其实我们常见的1920*1080(1080P)、2k、4k...都是16:9的比例,在做项目之前我们

    2024年02月12日
    浏览(52)
  • ChatGPT 与前端技术实现制作大屏可视化

    像这样的综合案例实分析,我们可以提供案例,维度与指标数据,让ChatGPT与AIGC 帮写出完整代码,并进行一个2行2列的布局设置。 数据与指令如下: 商品名称    销量    目标    完成率 可乐    479    600    79.83% 雪碧    324    600    54.00% 红茶    379    600  

    2024年02月11日
    浏览(53)
  • Vue3 +Echarts5 可视化大屏——屏幕适配

    项目基于Vue3 + Echarts5 开发,屏幕适配是使用 scale 方案 Echarts组件按需引入,减少打包体积 地图组件封装(全国省份地图按需加载) 效果图: 大屏适配常用的方案有 rem + vw/vh 和 scale 。 rem + vw/vh 方案 结合使用rem(相对于根元素字体大小的单位)和vw/vh(视窗宽度/高度的单位

    2024年02月15日
    浏览(50)
  • 【vue2可视化开发】新手会遇到的问题——大屏自适应

    开发可视化大屏第一步,必须要考虑适配不同屏幕的问题,在网络上查看资料,总结了一个目前最适合可视化开发的自适应方案——v-scale-screen组件 1. 安装 注:vue2使用v-scale-screen@1.0.0版本,vue3使用v-scale-screen@2.0.0版本 2. 在main.js中引用 3. 在vue组件中使用 v-scale-screen会将页面等

    2023年04月21日
    浏览(42)
  • 【python可视化大屏】使用python实现可拖拽数据可视化大屏

    我在前几期分享了关于爬取weibo评论的爬虫,同时也分享了如何去进行数据可视化的操作。但是之前的可视化都是单独的,没有办法在一个界面上展示的。这样一来呢,大家在看的时候其实是很不方便的,就是没有办法一目了然的看到数据的规律。为了解决这个问题我使用p

    2024年02月03日
    浏览(62)
  • 前端实现大屏缩放自适应屏幕

    在前端实现大屏缩放自适应屏幕的过程中,可以使用以下几种方式: 使用CSS3的缩放属性(transform: scale())来缩放页面元素,以适应不同大小的屏幕。缩放后,需要使用CSS来重新布局和调整页面元素的尺寸和位置。 使用CSS的@media查询来根据不同的屏幕大小调整元素的样式和布

    2024年02月20日
    浏览(47)
  • 【前端可视化】前端大屏适配方案

    动态设置 html 根字体的大小和 body 字体大小(使用 lib_flexible.js) 将设计稿的宽(1920)平均分成 24 等份,每一份 80px; html 根字体大小就设置为 80px,即 1rem = 80px,24rem = 1920px(移动端推荐分为 10 份); 将 body 字体大小设置为 16px; 最后需要使用插件或者其他方式将 px 转为 rem 单位:

    2024年02月11日
    浏览(47)
  • 如何在移动端数据可视化大屏实现分析?

    本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 项目想做数据可视化,想同时在PC端、手机端查看数据怎么办?业务主要关心的数据包括:销售数据、业绩达成、同比、环比,各

    2023年04月14日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包