vue中使用v-charts

本文介绍了如何在vue项目中使用v-charts快速实现环图、折线图、地图分布图、柱状图等图表,详细解析了各个组件的关键配置项,包括extend、echarts options等,并分享了实现过程中遇到的问题与解决方案。
摘要由CSDN通过智能技术生成

前段时间由于公司需要,产品临时安排任务,希望尽快出一个实时数据统计的图表,所以综合考虑就没有用echarts本身,而是使用了通过vue封装过的v-charts,希望能快速上手echarts,然后就有了这篇文章的实现过程。

相关文档

界面效果图

接下来按照上图红框从左到右从上到下一一讲解:

框一、 环图占比

  • 因为是用vue实现的,不希望所有内容都写在一个组件里,所以上图的五个红框分别代表五个子组件;
  • 目录如下:
├── src                    源码目录  
│  ├── main.js             入口js文件
│  ├── app.json            全局配置
│  ├── components          组件目录
│  │  └── common           公共组件
          └── classfiyRing.vue   框5
          └── hHistogram.vue     框4
          └── hLine.vue          框2
          └── hMap.vue           框3
          └── hRing.vue          框1复制代码
  • 环图组件内容:
<!-- 环状 -->
<template>
  <div class="h-ring">
    <div class="ring-relative">
      <ve-ring
        class="ring-box"
        :data="chartData"
        :settings="chartSettings"
        height="112px"
        width="112px"
        :tooltip="tooltip"
        :extend="chartExtend"
      ></ve-ring>
      <span class="desc">{
    {percentage}}</span>
    </div>
    <p class="title">{
    {text}}</p>
  </div>
</template>

<script>
export default {
  data () {
    this.chartSettings = {
      dimension: 'name',
      metrics: 'value',
      label: {
        normal: {
          show: false
        }
      },
      radius: [
        '25', '40'
      ],
      offsetY: 56
    }
    return {
      tooltip: {
        trigger: 'none'
      },
      chartExtend: {
        legend: {
          show: false
        },
        color: ['#44F0FF', '#19355A']
      }
    }
  },
  props: {
    text: {
      type: String,
      required: true
    },
    chartData: {
      type: Object,
      required: true
    },
    percentage: {
      type: String,
      required: true
    }
  }
}
</script>复制代码
  • v-charts官方文档提到两点:
  1. extend 属性,为了能够更方便的设置属性配置项等,可以通过extend属性实现对已配置好的内部属性进行单独的设置;
  2. echarts options 属性,与echarts配置项对应的属性也被加到了组件上,用于直接覆盖options原有的对应属性;

  3. echarts options 属性如下:
grid: [object, array],
colors: array,
visualMap: [object, array],
dataZoom: [object, array],
toolbox: [object, array],
title: object,
legend: [object, array],
xAxis: [object, array],
yAxis: [object, array],
radar: object,
tooltip: object,
axisPointer: object,
brush: [object, array],
geo: object,
timeline: [object, array],
graphic: [object, array],
series: [object, array],
backgroundColor: [object, string],
textStyle: object,
animation: object复制代码
  • ve-ring组件相关配置项
  1. settings,大家可以参考v-charts官方文档
  2. data,大家可以参考v-charts官方文档
  3. tooltip,大家可以参考echarts官方文档
  4. extend,大家可以参考v-charts文档里的extend属性说明
  • ve-ring组件内各属性值细节说明:
  1. settings内label作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值