Skip to content

witChart 图表组件

witChart是一个基于 ECharts 封装的 Vue 图表组件,支持多种图表类型和交互方式,提供了自定义主题和灵活的配置选项。组件内部集成了 ECharts 的核心功能,支持 Canvas 和 SVG 两种渲染方式,可根据需求灵活切换。

用法实列

vue
<template>
  <div style="width: 600px; height: 400px;">
    <witChart
      ref="witChartRef"
      :option="chartOption"
      :autoresize="true"
      :renderer="'CanvasRenderer'"
      @click="handleChartClick"
      @highlight="handleChartHighlight"
    />
  </div>
</template>

<script lang="ts" setup>
import { ref } from 'vue'

const witChartRef = ref<any>(null)
const chartOption = ref({
  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'
    }
  ]
})

const handleChartClick = (event: any) => {
  console.log('Chart clicked:', event)
}

const handleChartHighlight = (action: any) => {
  console.log('Chart highlighted:', action)
}

// 调用组件方法
const resizeChart = () => {
  witChartRef.value.resize()
}

const clearChart = () => {
  witChartRef.value.clear()
}
</script>

API

属性名类型默认值描述
option[Object]() => {}ECharts 配置项,详细配置可参考 ECharts 文档
autoresize[Boolean]true是否自动调整大小
renderer[String]'CanvasRenderer'渲染方式,可选值:'CanvasRenderer' 或 'SVGRenderer'

Method

方法描述参数
resize调整图表大小
clear清空图表内容
dispose销毁图表实例
getWidth获取图表宽度
getHeight获取图表高度

Events

事件名描述参数
click图表点击事件event 对象
highlight图表高亮事件action 对象

TIP

组件内部已集成了大部分 ECharts 图表类型和组件,可直接在 option 中配置使用。

湘ICP备2024070110号