vue-echart柱状图 案例代码分享

本文分享了在Vue项目中使用vue-echarts实现柱状图的案例,包括柱状图的渲染、数据请求、鼠标经过显示数据和点击事件处理。详细介绍了安装、按需引入、模板代码、数据处理和事件监听等步骤。

引言:因笔者在项目中只用到了柱状图,此处仅分享柱状图的案例代码,使用的是vue-echarts,涉及到数据请求,柱状图渲染,简化的鼠标经过显示数据内容,以及鼠标点击柱形图某个柱子的事件代码。

正文:

1、安装vue-echarts:

npm install echarts vue-echarts

 

2、使用方法(笔者用在src/views/chart.vue文件中):

1)按需引入vue-echarts:

import Vue from "vue";
import ECharts from "vue-echarts";

// 引入柱状图
import "echarts/lib/chart/bar";
// 引入提示框和标题组件
import "echarts/lib/component/tooltip";
import "echarts/lib/component/title";

Vue.component("chart", ECharts);

2)写在<template>中代码(可以设置主题颜色,有三种常见主题类型: default, light, dark,笔者案例中没有使用主题,显示的是默认风格);

<chart :options="barOptions" :auto-resize="true" @click="handleBar"></chart>
<!-- 增加主题颜色的代码如下 -->
<chart :options="barOptions" :auto-resize="true" theme="
### Vue 中使用 ECharts 实现柱状图的完整代码 以下是基于 VueECharts 的柱状图完整代码示例: #### HTML 部分 ```html <template> <div class="echart-container"> <div ref="main" style="width: 100%; height: 400px;"></div> </div> </template> ``` #### Script 部分 ```javascript <script> import * as echarts from 'echarts'; export default { name: 'BarChart', data() { return { chartInstance: null, xData: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'], // X轴数据 yData: [23, 24, 18, 25, 27, 28, 25], // Y轴数据 }; }, mounted() { this.initChart(); }, beforeDestroy() { if (this.chartInstance) { this.chartInstance.dispose(); // 销毁实例,防止内存泄漏 } }, methods: { initChart() { const option = { title: { text: 'Weekday Data Statistics', // 图表标题 subtext: 'Example of Bar Chart', // 子标题 left: 'center' }, tooltip: { trigger: 'axis', // 提示框触发方式 formatter: '{b}: {c}' // 自定义提示框显示内容 }, xAxis: { type: 'category', // 类目轴 data: this.xData // 设置X轴数据 }, yAxis: { type: 'value' // 数值轴 }, series: [ { name: 'Sales Volume', // 系列名称 type: 'bar', // 柱状图类型 data: this.yData, // 数据源 itemStyle: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#83bff6' }, { offset: 0.5, color: '#188df0' }, { offset: 1, color: '#188df0' }]) // 渐变颜色设置 } } ] }; this.chartInstance = echarts.init(this.$refs.main); this.chartInstance.setOption(option); // 动态调整图表尺寸 window.addEventListener('resize', () => { if (this.chartInstance) { this.chartInstance.resize(); } }); } } }; </script> ``` #### Style 部分 ```css <style scoped> .echart-container { display: flex; justify-content: center; align-items: center; } </style> ``` ---代码实现了以下功能: - **动态加载 ECharts**:通过 `npm install echarts` 安装依赖并导入[^2]。 - **响应式设计**:监听窗口大小变化事件,自动调整图表尺寸[^1]。 - **渐变颜色配置**:为柱状图设置了线性渐变的颜色效果[^4]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值