dataV教程-浅用dataV

一别多日,好久没有和大家相见了。其一的原因是因为公司的项目,其二就是因为太懒了。现在给大家浅浅的介绍一下这个好用的大屏展示框架吧。如果后续有深入的话,我会出一个详解版本的。

一、dataV介绍

前言:由于当前的大数据时代,人们对所产生的数据都有十分大的展示需求,都需要更美观,更加直接的方式去查看数据。

datav网址:Welcome | DataV

二、dataV的使用

注意:目前的使用版本只支持vue2,不支持vue3.虽然官网上面有vue3的版本,但是我实际用起来很麻烦,网上看了很多的解决办法,选择了使用了有人把datav重新改写了一次的版本。但是内容是完全一致的。如果你的项目是vue3的话可以选择使用这个网站

套壳网站:DataV Vue3+TS+Vite版 | DataV - Vue3

由于我使用的是这个修改版本,那我就这个版本+vue3来进行讲解。

2.1 安装

  • 安装,此处使用pnpm工具,也可以yarn,npm等

pnpm install @kjgl77/datav-vue3

2.2全局引入

// main.ts中全局引入
import { createApp } from 'vue'
import DataVVue3 from '@kjgl77/datav-vue3'
​
const app = createApp(App)
​
app.use(DataVVue3)
app.mount('#app')

2.3使用全屏容器

数据可视化页面一般在浏览器中进行全屏展示,全屏容器将根据屏幕比例及当前浏览器窗口大小,自动进行缩放处理。浏览器全屏后,全屏容器将充满屏幕。

<dv-full-screen-container>content</dv-full-screen-container>

使用datav可以快速的构建出一个大屏框架

<template>
  <!--  我是大屏-->
  <dv-full-screen-container style="background-color: black">
​
    <div class="module-box">
      <div style="flex: 0 1 30%">
        <div class="flex flex-direction">
          <dv-border-box-5 style="height: 20vh;">dv-border-box-8</dv-border-box-5>
          <dv-border-box-6 style="height: 20vh;">dv-border-box-8</dv-border-box-6>
          <dv-border-box-11 style="height: 20vh;">dv-border-box-8</dv-border-box-11>
        </div>
      </div>
      <div style="flex: 0 1 40%">
        <dv-border-box-11 style="height: 60vh;width: 100%" title="dv-border-box-11">
        </dv-border-box-11>
      </div>
      <div style="flex: 0 1 30%">
        <div class="flex flex-direction"></div>
        <dv-border-box-11 style="height: 30vh;" title="dv-border-box-11">
        </dv-border-box-11>
        <dv-border-box-11 style="height: 30vh;" title="dv-border-box-11"></dv-border-box-11>
      </div>
    </div>
    <div class="module-box">
      <div style="flex: 0 1 50%">
        <dv-border-box-11 style="height: 38vh;" title="dv-border-box-11">
        </dv-border-box-11>
      </div>
      <div style="flex: 0 1 50%">
        <dv-border-box-11 style="height: 38vh;" title="dv-border-box-11"></dv-border-box-11>
      </div>
    </div>
  </dv-full-screen-container>
​
</template>

三、使用echarts

3.1 下载echarts

从npm获取

npm install echarts

3.2示例代码

第一步:引入

import * as echarts from "echarts";

第二步:在mounted生命周期函数中调用方法

  mounted() {
      this.setMap()
  },

第三步:创建一个dom元素

  <div ref="chart" id="map3" style="width: 100%;height: 100%;"></div>

第四步:在setMap()方法中找到这个dom元素

      let myChart = echarts.init(this.$refs.chart)

第五步:将echarts中的示例option引入进来

const option = {...你需要的配置}

第六步:将刚才的设置挂载到上这个dom元素中去

      myChart.setOption(option)

将这个封装成一个组件,然后使用组件。

<template>
  <div ref="chart" id="map3" style="width: 100%;height: 100%;"></div>
</template>
​
<script>
 //引入echarts
import * as echarts from "echarts";
export default {
name: "lineChart",
  data(){
​
  },
  mounted() {
  this.setMap()
  },
  methods:{
    setMap(){
      let myChart = echarts.init(this.$refs.chart)
      const  option = {
        xAxis: {
          type: 'category',
          data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
        },
        yAxis: {
          type: 'value'
        },
        series: [
          {
            data: [120, 200, 150, 80, 70, 110, 130],
            type: 'bar',
            showBackground: true,
            backgroundStyle: {
              color: 'rgba(180, 180, 180, 0.2)'
            }
          }
        ]
      }
      myChart.setOption(option)
        
        //第二种
   
      // this.$nextTick(() => {
      //   let map2 = echarts.init(document.getElementById('map3'))
      //   this.chart2 = map2
      //   map2.setOption( {
      //     xAxis: {
      //       type: 'category',
      //       data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
      //     },
      //     yAxis: {
      //       type: 'value'
      //     },
      //     series: [
      //       {
      //         data: [120, 200, 150, 80, 70, 110, 130],
      //         type: 'bar',
      //         showBackground: true,
      //         backgroundStyle: {
      //           color: 'rgba(180, 180, 180, 0.2)'
      //         }
      //       }
      //     ]
      //   })
      // })
    }
  }
}
</script>
​
<style scoped>
​
</style>

  • 11
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端达闻西

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值