echarts 是百度基于 JavaScript 实现的一个开源可视化图表库,主要特点就是可视化类型丰富、动画炫酷、使用简单。
这个教程就简单演示如何在 Vue 3 项目中使用 echarts。
import * as echarts from "echarts";
const state = reactive({
option: {
legend: {
x: "center",
y: "bottom",
},
tooltip: {
trigger: "item", // axis item none三个值
formatter: "{b}:{d}%",
},
series: [
{
type: "pie",
radius: "50%",
label: {
show: true,
// formatter: "{b} : {c} ({d}%)", //带当前图例名 + 百分比
// formatter: "{d}%", //只要百分比
formatter: "{b}:{d}%",
},
labelLine: { show: true },
data: [
{
value: 1956,
name: "非星级",
},
{
value: 1866,
name: "一星级",
},
{
value: 1725,
name: "二星级",
},
{
value: 1535,
name: "三星级",
},
{
value: 1505,
name: "四星级",
},
{
value: 1414,
name: "五星级",
},
],
},
],
},
});
const initeCharts = () => {
let myChart = echarts.init(document.getElementById("myChart"));
// 绘制图表
myChart.setOption(state.option);
};
onMounted(() => {
initeCharts();
});
<template>
<div>
<div id="myChart" style="width: 500px; height: 500px"></div>
</div>
</template>
<template>
<div>
<div id="myChart" style="width: 500px; height: 500px"></div>
</div>
</template>
<script setup>
import { reactive, ref, onMounted } from "vue";
import * as echarts from "echarts";
const state = reactive({
option: {
legend: {
x: "center",
y: "bottom",
},
tooltip: {
trigger: "item", // axis item none三个值
formatter: "{b}:{d}%",
},
series: [
{
type: "pie",
radius: "50%",
label: {
show: true,
// formatter: "{b} : {c} ({d}%)", //带当前图例名 + 百分比
// formatter: "{d}%", //只要百分比
formatter: "{b}:{d}%",
},
labelLine: { show: true },
data: [
{
value: 1956,
name: "非星级",
},
{
value: 1866,
name: "一星级",
},
{
value: 1725,
name: "二星级",
},
{
value: 1535,
name: "三星级",
},
{
value: 1505,
name: "四星级",
},
{
value: 1414,
name: "五星级",
},
],
},
],
},
});
const initeCharts = () => {
let myChart = echarts.init(document.getElementById("myChart"));
// 绘制图表
myChart.setOption(state.option);
};
onMounted(() => {
initeCharts();
});
</script>
<style lang="scss" scoped></style>