ECharts是一个使用 JavaScript 实现的开源可视化库,在Vue项目中,可通过引用Echarts来进行图表的绘制,具体操作如下。
1.安装
通过npm来安装Echarts,代码如下:
npm install echarts --save
2.引入
安装后,可将Echarts组件全部引入也可按需引入(步骤5),代码如下:
import * as echarts from "echarts";
3.使用
(1)首先定义一个区域来展示图表,此处以div为例:
<template>
<div
ref="chart"
style="
width: 95%;
height: 85%;
margin: auto;
"
></div>
</template>
样式可根据自己的需求进行添加调整。
(2)数据部分的处理模板如下:
<script setup lang="ts">
import * as echarts from "echarts";
import { ref, onMounted } from "vue";
const chart = ref();
onMounted(() => {
let myChart = echarts.init(chart.value);
myChart.setOption({
//此处为图表的数据
});
window.onresize = function () {
myChart.resize();
};
});
</script>
(3)将Echarts官网的实例数据添加模板中,例如:
4.展示
展示效果如图所示:
5.按需引入图表和组件
// 引入 echarts 核心模块,核心模块提供了 echarts 使用必须要的接口。
import * as echarts from 'echarts/core';
// 引入柱状图图表,图表后缀都为 Chart
import { BarChart } from 'echarts/charts';
// 引入提示框,标题,直角坐标系,数据集,内置数据转换器组件,组件后缀都为 Component
import {
TitleComponent,
TooltipComponent,
GridComponent,
DatasetComponent,
DatasetComponentOption,
TransformComponent
} from 'echarts/components';
// 标签自动布局,全局过渡动画等特性
import { LabelLayout, UniversalTransition } from 'echarts/features';
// 引入 Canvas 渲染器,注意引入 CanvasRenderer 或者 SVGRenderer 是必须的一步
import { CanvasRenderer } from 'echarts/renderers';
// 注册必要的组件
echarts.use([
TitleComponent,
TooltipComponent,
GridComponent,
DatasetComponent,
TransformComponent,
BarChart,
LabelLayout,
UniversalTransition,
CanvasRenderer
]);
// 接下来的使用就跟之前一样,初始化图表,设置配置项
注意:
按需引入本质上是为了减少打包的体积,因此ECharts 按需引入的时候不再提供任何渲染器,所以需要选择引入 CanvasRenderer 或者 SVGRenderer 作为渲染器。这样的好处是假如你只需要使用 svg 渲染模式,打包的结果中就不会再包含无需使用的 CanvasRenderer 模块。