2023年6月最新|大屏可视化

news2025/2/13 13:00:49

大屏可视化

一、可视化适配

大屏下显示一般都是16:9尺寸 1920*1080 ,做适配也就是在这个比例的基础上进行的

方案一:打开VSCode终端,下载flexible

npm i lib-flexible

在这里插入图片描述

修改源码

要修改的源码的路径: 项目/mode_modules/lib-flexible/flexible.js
在这里插入图片描述

// lefxible设计稿默认按540计算 我们不采取 我们采取设计稿宽度 1920
function refreshRem(){
    var width = docEl.getBoundingClientRect().width;
    if (width / dpr > 1920) {
        width = 1920 * dpr;
    }
    var rem = width / 24; /// 1920 / 24 = 80px 1rem = 80px
    docEl.style.fontSize = rem + 'px';
    flexible.rem = win.rem = rem;
}

项目中引用

找到目录路径中 src/main.js文件
在这里插入图片描述
导入引用 import ‘lib-flexible’
在这里插入图片描述

配置插件—px to rem & rpx & vw(cssrem)

在这里插入图片描述
鼠标向下滑动找到Cssrem:Root Font Size选项,将值改成80(如下图)
在这里插入图片描述
开发的时候使用单位:rem,即可;切记 1rem = 80px哦

二、可视化操作

可视化就是将数据用直观的方式展示,比单纯的文字看上去形象鲜活。

D3.js 非常棒的一款可视化工具库,就是难度较大。
Echarts.js 百度出品的,后来赠送给Apache,是免费开源的。
Highcharts.js 类似Echarts.js(相当于wps和office之间的关系)
AntV.js 蚂蚁金服 目前全新的一套可视化方案

Apache ECharts官网链接Apache ECharts,官网示例如下
在这里插入图片描述

vue中使用echarts

在终端下载echarts

npm i echarts

在这里插入图片描述
导入

import * as echarts from 'echarts'

定义容器

<div ref="echartsBox" class="echartsBox" style="width:400px;height:400px"></div>

初始化echarts

// 在生命周期 mounted中初始化
// this.echartsBox 需要在data重定义变量
this.echartsBox = echarts.init(this.$refs.echartsBox)
或
this.echartsBox = echarts.init(document.querySelecter("#id"))
参数说明
this.echartsBox = echarts.init(this.$refs.echartsBox,null,{width:111,height:222})
参数3可以配置初始化的canvas大小

定义配置变量

// 配置图表对象 渲染到页面中 
// this.options在data中定义的
this.echartsBox.setOption(this.options)

操作步骤:找到下图中的HelloWord.vue文件重命名为TestView.vue
在这里插入图片描述
在这里插入图片描述
清空文件中的源代码,并重新写入如下代码

<template>
  <div >

  </div>
</template>

<script>
export default {

  }
</script>

<style scoped lang="scss">

</style>

在这里插入图片描述
找到App.vue文件,修改文件中的代码为

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

<script>
import TestView from './components/TestView.vue'

export default {
  name: 'App',
  components: {
    HelloWorld
  }
}
</script>
<style lang="scss" scoped>
</style>

在这里插入图片描述
然后在TestView.vue中导入echarts

import * as echarts from "echarts";

TestView.vue源码如下:

<template>
  <div >
  <div class="box" ref="box"></div>
  </div>
</template>
import * as echarts from "echarts";
<script>
export default {
  data(){
    return{
      myecharts:"",
      option: {
      xAxis: {
        type: 'category',
        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
      },
      yAxis: {
        type: 'value'
      },
        series: [
          {
            data: [150, 230, 224, 218, 135, 147, 260],
            type: 'line'
          },
        ],
      },
    };
  },
  mounted(){
    this.myecharts = echarts.init(this.$refs.box);
    this.myecharts.setOption(this.option);
  }
}
</script>

<style scoped lang="scss">
  .box{
    width :500px;
    height:400px;
  }
</style>

App.vue源码如下:

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

<script>
import TestView from './components/TestView.vue'

export default {
  name: 'App',
  components: {
    TestView
  }
}
</script>

<style lang="scss" scoped>

</style>

三、常见的echarts

折线图
option = {
  xAxis: { // echarts配置x轴
    type: 'category', 
    data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] // x轴显示数据
  },
  yAxis: { // y轴配置
    type: 'value'
  },
  series: [ // 配置数据
    {
      data: [150, 230, 224, 218, 135, 147, 260],
      type: 'line' // 数据的显示方式 line折线
    }
  ]
};
柱形图
 {
    tooltip: {
          trigger: "axis",
          axisPointer: {
            type: "shadow",
          },
     },
     grid: {
          left: "3%",
          right: "4%",
          bottom: "3%",
          containLabel: true,
     },
     xAxis: [
          {
            type: "category",
            data: ["张三", "李四", "王五", "赵六", "田七", "孙八", "钱九"],
            axisTick: {
              alignWithLabel: true,
            },
          },
     ],
     yAxis: [
          {
            type: "value",
          },
     ],
     series: [
          {
            name: "成交量",
            type: "bar",
            barWidth: "60%",
            data: [10, 52, 20, 33, 39, 33, 22],
          },
     ],
}
饼图
{
   legend: {
      top: "bottom",
      textStyle: {
            color: "#fff",
      },
   },
  series: [
      {
            name: "Nightingale Chart",
            type: "pie",
            radius: [20, 150],
            center: ["50%", "50%"],
            roseType: "area",
            itemStyle: {
              borderRadius: 8,
       },
       data: [
              { value: 40, name: "成华区" },
              { value: 38, name: "金牛区" },
              { value: 32, name: "武侯区" },
              { value: 30, name: "青羊区" },
              { value: 28, name: "双流区" },
              { value: 26, name: "锦江区" },
            ],
        },
    ],
}

echarts关键属性
title 配置标题
legend 图示配置
textStyle 对象是配置颜色的
xAxis 折线图配置x轴
yAxis 折线图配置y轴
tooltip 鼠标悬停 显示图表信息
series 数据信息
color 图标颜色

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

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

相关文章

Springboot+Vue服务器盲盒活动

文章目录 一、项目要求二、说明文档1、用户抽奖主页/raffle2、多种奖品链接1、奖品1 discont /discount2、奖品2 CPU upgrade /cpu3、奖品3 Memory upgrade /memory4、奖品4 Increase duration /duration5、奖品5 Send to server /server6、奖品6 Configuration upgrade /upgra…

信必优成功案例-全球Tops汽车技术供应商

该集团是全球Tops汽车技术供应商&#xff0c;业务范围涵盖了汽油系统、柴油系统、汽车底盘控制系统、汽车电子驱动、起动机与发电机、电动工具、家用电器、传动与控制技术、热力技术和安防系统等。信必优于2021年开始为该客户服务&#xff0c;参与了客户多个项目&#xff0c;以…

Android进阶 四大组件的工作过程(二):Service的工作过程

Android进阶 四大组件的工作过程&#xff08;二&#xff09;&#xff1a;Service的工作过程 导语 本片文章主要是来介绍Service组件的工作过程的&#xff0c;主要分成Service的启动和Service的绑定两个部分来讲。上一篇文章我们已经介绍了Activity的工作工程&#xff0c;而Ser…

Windows软件:如何安装ideaIU-2020.3.3并使用无限重置插件达到永久使用

​前言&#xff1a; ​在我们做SpringBoot Java项目时&#xff0c;一个好的开发工具可以让我们的效率达到事半功倍&#xff0c;早期的eclipse已经无法满足我们日常需求&#xff0c;当然idea集成开发工具在很早前就已经进入市场&#xff0c;如今取得了无法撼动的地位&#xff0c…

度学习pytorch实战六:ResNet50网络图像分类篇自建花数据集图像分类(5类)超详细代码

1.数据集简介、训练集与测试集划分 2.模型相关知识 3.model.py——定义ResNet50网络模型 4.train.py——加载数据集并训练&#xff0c;训练集计算损失值loss&#xff0c;测试集计算accuracy&#xff0c;保存训练好的网络参数 5.predict.py——利用训练好的网络参数后&#xff0…

为Nomad Web使用添加快捷应用图标

大家好&#xff0c;才是真的好。 上次我们说到Nomad Web已经更新到了1.0.8版本&#xff0c;作为未来的“Notes客户机”&#xff08;运行在浏览器中&#xff09;&#xff0c;Nomad Web的更新迭代很快。从1.0.5版本开始&#xff0c;就可以直接部署在Domino服务器上&#xff0c;而…

STM32MP157_PRO开发板的第一个驱动程序

文章目录 目的&#xff1a;为什么编译驱动程序之前要先编译内核&#xff1f;编译内核编译设备树编译安装内核模块编译内核模块安装内核模块到 Ubuntu 的NFS目录下备用 安装内核和模块到开发板上编译 led 驱动在开发板安装驱动模块下载驱动程序安装驱动模块 目的&#xff1a; 在…

Netty实战(十三)

WebSocket协议&#xff08;一&#xff09; 一、什么是WebSocket 协议二、简单的 WebSocket 程序示例2.1 程序逻辑2.2 添加 WebSocket 支持2.3 处理 HTTP 请求2.4 处理 WebSocket 帧 一、什么是WebSocket 协议 WebSocket 协议是完全重新设计的协议&#xff0c;旨在为 Web 上的双…

读书笔记-《ON JAVA 中文版》-摘要16[第十六章 代码校验]

文章目录 第十六章 代码校验1. 测试1.1 单元测试1.2 JUnit1.3 测试覆盖率的幻觉 2. 前置条件2.1 断言&#xff08;Assertions&#xff09;2.2 Java 断言语法2.3 Guava 断言2.4 使用断言进行契约式设计2.4.1 检查指令2.4.2 前置条件2.4.3 后置条件2.4.4 不变性2.4.5 放松 DbC 检…

Frida技术—逆向开发的屠龙刀

简介 Frida是一种基于JavaScript的动态分析工具&#xff0c;可以用于逆向开发、应用程序的安全测试、反欺诈技术等领域。Frida主要用于在已安装的应用程序上运行自己的JavaScript代码&#xff0c;从而进行动态分析、调试、修改等操作&#xff0c;能够绕过应用程序的安全措施&a…

路径规划算法:基于人工电场优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于人工电场优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于人工电场优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化…

【Leetcode60天带刷】day06哈希表——242.有效的字母异位词,349. 两个数组的交集,202题. 快乐数,1. 两数之和

题目&#xff1a;242.有效的字母异位词 Leetcode原题链接&#xff1a;242. 有效的字母异位词 思考历程与知识点&#xff1a; 如果一个字母一个字母的找&#xff0c;也就是暴力&#xff0c;用两个for的话时间复杂度是O(N^2)&#xff1b; 我们可以换个思路&#xff0c;a~z一共…

Telerik Report Server R2 2023

Telerik Report Server R2 2023 仪表报告项-使用仪表或类似表盘的显示提供数据的可视化表示。 报告项上的AccessibleRole属性-ARIA(可访问的富Internet应用程序)支持已显著改进。在Web上&#xff0c;当启用了辅助功能时&#xff0c;呈现的报表项包含预定义的辅助功能角色。这样…

(七)矢量数据的空间分析——叠置分析①

矢量数据的空间分析——叠置分析 叠置分析是将代表不同主题的各个数据层面进行叠置&#xff0c;产生一个新的数据层面&#xff0c;叠置结果综合了原来两个或多个层面要素所具有的属性。 叠置分析不仅生成了新的空间关系&#xff0c;而且还将输入的多个数据层的属性联系起来产…

随机的乐趣和游戏

1、猜数字游戏 #GuessingGame.py import random the_number random.randint(1, 10) print("计算机已经在1到10之间随机生成了一个数字&#xff0c;") guess int(input("请你猜猜是哪一个数字: ")) while guess ! the_number:if guess > the_number:p…

【MySQL】数据库基本知识小结

数据库的基本概念 数据库&#xff1a;DataBase 简称 DB&#xff0c;就是信息的集合或者说数据库是由数据库管理系统管理的数据的集合。数据库管理系统&#xff1a;DataBase Management System 简称 DBMS&#xff0c;是一种操纵和管理数据库的大型软件&#xff0c;通常用于建立…

数据结构 一绪论

第一章&#xff1a;绪论 1.1数据结构的基本概念 1.数据&#xff1a;数据是信息的载体&#xff0c;是描述客观事物属性的数、字符以及所有能输入到计算机中并被程序识别 和处理的符号的集合。 2.数据元素&#xff1a;数据元素是数据的基本单位&#xff0c;通常作为一个整体进行…

软件项目质量跟踪控制的3大方法

1、质量度量法 质量度量法包括尺度度量和二元度量两种方法&#xff0c;而尺度度量是定量度量&#xff0c;适用可直接度量的特性。如缺陷率 而二元度量是定性度量&#xff0c;适用间接度量的质量特性。如使用性&#xff0c;灵活性。 软件项目质量跟踪控制的3大方法&#xff1a;质…

ReentrantLock实现原理-公平锁

在ReentrantLock实现原理(1)一节中&#xff0c;我们了解了ReentrantLock非公平锁的获取流程&#xff0c;在本节中我们来看下ReentrantLock公平锁的创建以及锁管理流程 创建ReentrantLock公平锁 创建公平锁代码如下&#xff1a; ReentrantLock reentrantLock new ReentrantL…

elementui 自定义loading动画加载层

elementui 自定义loading动画加载层。main.js中添加 import { Loading } from element-ui /* 自定义加载层 */ Vue.prototype.openLoading function(wer) {const loading Loading.service({lock: true, // 是否锁屏text: , // 加载动画的文字// spinner: inner-circles-loade…