news 2026/4/23 20:47:04

12.18 Datav的使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
12.18 Datav的使用

vue2使用DataV:http://datav.jiaminghi.com/guide/

vue3使用DataV:https://datav-vue3.jiaminghi.com/guide/

注意:目前为止,文档中的使用方式是vue2的使用方式,所以必须使用vue2的方式搭建环境

创建vue项目

查看是否安装vue

vue -V

创建vue项目

vue create vuedatav

进入项目

cd vuedatav

启动项目

npm run dev

访问项目

![[07985d41-935c-4422-a0dc-289e20846c03.png]]

DataV-大屏数据展示组件库

官网地址:http://datav.jiaminghi.com/

![[e309b893-8732-47cd-ba59-cb434c15435f.png]]

组件库基于Vue (React版) ,主要用于构建大屏(全屏)数据展示页面即数据可视化,具有多种类型组件可供使用:

  • 边框

带有不同边框的容器

  • 装饰

用来点缀页面效果,增加视觉效果

  • 图表

图表组件基于Charts (opens new window)封装,轻量,易用

  • 其他

飞线图/水位图/轮播表/…

安装

cd datav-project

在Vue项目下进行组件库安装。

npm安装

npm install @kjgl77/datav-vue3

yarn安装

yarn add @kjgl77/datav-vue3
  1. 全局使用

main.js

import dataV from "@kjgl77/datav-vue3"; ... app.use(dataV); app.mount('#app')

结构布局

  • div+css

  • flex

  • Scss

  • rem适配

    • 设计稿是1920px

    • flexable.js把屏幕分为24等份

    • cssrem插件的基准值是80px

    • 插件-配置按钮-配置扩展设置-Root Font Size里面设置。但是别忘记重启vscode软件保证生效

  • echarts基础

添加背景

<template> <div class="container"> <dv-border-box-1>dv-border-box-1</dv-border-box-1> </div> </template> <style> .container{ color: #fff; background-color: #000; width: 100%; height: 100vh; background: url('@/assets/bg.png') no-repeat; background-size: 100% 100%; } </style>

头部效果

<!-- 顶部标题 --> <div class="top"> <dv-decoration-10 style="width:90%;height:5px;" /> <dv-decoration-8 style="width:300px;height:50px;" /> <dv-decoration-11 style="width:400px;height:60px; font-size: .09rem;">智慧工程数据中心</dv-decoration-11> <dv-decoration-8 :reverse="true" style="width:300px;height:50px;" /> <dv-decoration-10 style="width:90%;height:5px;" /> </div> <style> .container { color: #fff; background-color: #000; width: 100%; height: 100vh; background: url('@/assets/bg.png') no-repeat; background-size: 100% 100%; } .top { height: 10vh; display: flex; align-items: center; } </style>

中间部分

<!-- 中间部分 --> <div class="cent"> <div class="chart1"> <dv-border-box-13>dv-border-box-13</dv-border-box-13> <dv-border-box-1>dv-border-box-1</dv-border-box-1> <dv-border-box-2>dv-border-box-2</dv-border-box-2> </div> <div class="chart2"> <dv-border-box-12>dv-border-box-12</dv-border-box-12> </div> <div class="chart3"> <dv-border-box-1>dv-border-box-1</dv-border-box-1> <dv-border-box-8 :reverse="true">dv-border-box-8</dv-border-box-8> </div> </div> <style> .cent { display: flex; } .chart1 { height: 21.5vh; flex: 2; } .chart2 { flex: 3; height: 65vh; } .chart3 { flex: 2; height: 32.5vh; } </style>

![[d6010795-3298-4f38-a719-2d8ebc4270f7.png]]

底部内容

<!-- 底部内容 --> <div class="footer"> <div class="foot-one"> <dv-border-box-8 :reverse="true">dv-border-box-8</dv-border-box-8> </div> <div class="foot-two"> <dv-border-box-13>dv-border-box-13</dv-border-box-13> </div> <div class="foot-thr"> <dv-border-box-8 :reverse="true">dv-border-box-8</dv-border-box-8> </div> </div> <style> .footer { display: flex; } .foot-one { flex: 3; height: 25vh; } .foot-two { flex: 2; height: 25vh; } .foot-thr { flex: 2; height: 25vh; } </style>

![[c1ff356d-6199-44ee-a5b5-aa22fdb1fb79.png]]

添加图表

直接复制datav官网的代码

![[4dcb74ab-8b08-47f1-a5ab-97e92b110bd0.png]]

Echarts添加图表

在main.js中引入echarts

import echarts from "echarts"

创建元素

<div ref="chart" style="width: 100%;height: 160px;"></div>

在页面中引入echarts

import * as echarts from "echarts/core" export default { name: 'LargeScreen', mounted() { this.initChart();//绘制图表 }, methods: { initChart() { // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(this.$refs.chart); // 指定图表的配置项和数据 var option = { tooltip: {}, xAxis: { data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子'] }, yAxis: {}, grid: { x: 50, y: 25, x2: 30, y2: 35 }, series: [ { name: '销量', type: 'bar', data: [5, 20, 36, 10, 10, 20] } ] }; // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); } } }

添加datav中的图表

飞行图

<div class="content" style="height: 100vh; background-color: black;"> <dv-flyline-chart :config="config" :dev="true" style="width:100%;height:100%;" /> </div> <script> export default { name: 'App', data(){ return { config:{ centerPoint: [0.48, 0.35], points: [ // 飞行线路 [0.52, 0.23], [0.43, 0.29], [0.59, 0.35], [0.53, 0.47], [0.45, 0.54], [0.36, 0.38], [0.62, 0.55], [0.56, 0.56], [0.37, 0.66], [0.55, 0.81], [0.55, 0.67], [0.37, 0.29], [0.20, 0.36], [0.76, 0.41], [0.59, 0.18], [0.68, 0.17], [0.59, 0.10] ], bgImgUrl: 'http://datav.jiaminghi.com/img/flylineChart/map.jpg' // 地图背景 } } } } </script>

![[59ea01c6-65e1-4703-8084-f140c4ab371c.png]]

水位图

<dv-water-level-pond :config="config" style="width:150px;height:200px" /> <script> export default { name: 'App', data(){ return { config:{ data:[66], shape:"roundRect" } } } } </script>

![[49884a43-f8da-4819-929b-128401457cd1.png]]

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 13:00:21

基于百度指数构建购房需求分析系统开题报告

西南科技大学本科毕业设计&#xff08;论文&#xff09;开题报告 学 院 计算机科学与技术学院 专业 软件工程 班级 软件2101 姓 名 学号 指导教师 设计&#xff08;论文&#xff09;题目 基于百度指数构建购房需求分析系统 一、选题背景&#xff08;目的、…

作者头像 李华
网站建设 2026/4/23 2:35:50

计算机大学生兼职赚钱,零基础入门到精通,收藏这篇就够了

如今&#xff0c;计算机行业内卷严重&#xff0c;我们不找点赚外快的路子这么行呢&#xff1f; 一、安全众测 国内有很多成熟的src众测平台&#xff0c;如漏洞盒子、火线众测、补天、CNVD、漏洞银行等。一些大厂也有自己的src&#xff0c;如腾讯、百度、深信服、字节、滴滴。…

作者头像 李华
网站建设 2026/4/23 10:53:47

电力巡检路线如何实现全自动规划?:深入解析AI Agent的动态决策机制

第一章&#xff1a;电力巡检路线全自动规划的背景与挑战 随着智能电网建设的不断推进&#xff0c;传统依赖人工经验制定巡检路线的方式已难以满足现代电力系统对效率与安全性的高要求。电力设施分布广泛、环境复杂&#xff0c;巡检任务需综合考虑设备类型、地理条件、历史故障数…

作者头像 李华
网站建设 2026/4/23 10:52:40

大模型架构设计指南:从零构建企业级AI能力【收藏级教程】

文章详解企业级大模型五层架构设计与落地方法&#xff0c;包括基础资源、模型基座、企业AI应用管理平台、能力层和应用层。通过将算力、模型、知识、编排、评测、治理形成闭环生产线&#xff0c;把AI能力从技术转化为业务价值。强调每个模块都应做成"可注册、可评测、可回…

作者头像 李华