vue3+ts+echarts折线图超出阈值变红、visualMap报错问题处理

本文介绍了在vue3和typescript环境下,使用echarts创建分段折线图并处理超过阈值颜色变红的问题,同时解决了visualMap报错。详细讲述了从数据处理到echarts配置的全过程,包括父元素高度设置、数据结构、series配置以及visualMap的正确使用方法。
摘要由CSDN通过智能技术生成

I. 需求概括:

vue3+typsescript+echarts制作分段折线图,在阈值范围内显示折线原本应该设置的颜色,在阈值范围外即超过阈值范围设置为红色(或者是区别于折现本身的颜色)。参考图如下:
在这里插入图片描述

II.实现过程:

tips:这次用的框架为vue3+ts+element-ui,其中把涉及到的echart绘图方法以及页面逻辑进行了分开处理。

1、第一步先安装echarts

npm install echarts --save

2、第二步在文件中引入(在这需要提醒一下,由于本次是方法与页面区分开所以本次需要建一个ts文件用于处理echarts,而页面.vue文件则用于处理后端返回的数据以及前端页面展示所需的dom结构&#x

好的,下面是实现代码: ```html <template> <div class="chart-container"> <canvas ref="chartCanvas"></canvas> </div> </template> <script lang="ts"> import { defineComponent, onMounted, ref } from "vue"; import * as echarts from "echarts"; export default defineComponent({ name: "DualAxisLineChart", setup() { const chartCanvas = ref<HTMLCanvasElement | null>(null); onMounted(() => { if (chartCanvas.value) { const chart = echarts.init(chartCanvas.value); chart.setOption({ tooltip: { trigger: "axis", axisPointer: { type: "cross", animation: false, label: { backgroundColor: "#505765", }, }, }, xAxis: [ { type: "category", data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], axisPointer: { type: "shadow", }, }, ], yAxis: [ { type: "value", name: "y1", min: 0, max: 100, interval: 20, axisLabel: { formatter: "{value} %", }, }, { type: "value", name: "y2", min: 0, max: 500, interval: 100, axisLabel: { formatter: "{value} km", }, }, ], series: [ { name: "data1", type: "line", yAxisIndex: 0, data: [30, 40, 50, 60, 70, 80, 90], }, { name: "data2", type: "line", yAxisIndex: 1, data: [100, 200, 300, 400, 450, 480, 500], }, ], }); } }); return { chartCanvas, }; }, }); </script> <style scoped> .chart-container { width: 100%; height: 400px; } </style> ``` 这里使用了 `echarts` 库来实现双 y 轴折线图,具体的实现过程如下: 1. 在 `template` 中添加一个 `canvas` 元素,用于渲染图表; 2. 在 `setup` 中使用 `onMounted` 钩子,在组件挂载时初始化 `echarts` 实例,并设置图表的配置项; 3. 在 `return` 中返回 `chartCanvas`,该值被绑定到 `canvas` 的 `ref` 上,用于在初始化时获取 `canvas` 元素。 以上就是使用 `vue3` + `ts` + `echarts` 实现双 y 轴折线图的代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是小许同学吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值