echars图表一进来默认显示tooltip

本文介绍了如何在Echarts项目中实现图表加载时默认展示指定标记点的Tooltip信息窗。通过利用chart实例的dispatchAction方法,设置type为'showTip',并指定seriesIndex和dataIndex,可以实现在图表渲染完成后立即显示Tooltip。在示例代码中,延迟1秒展示最后一个数据点的Tooltip,以匹配图表的渲染动画效果。
摘要由CSDN通过智能技术生成

写在前面

项目中碰到一个小优化项,echarts图表渲染一进来默认显示指定标记点信息窗即tooltip,效果类似:

动手实现

核心是利用chart实例的dispatchAction方法

        部分代码示例:*注:vue环境

<template>
    <div :style="{width:width, height:height}"></div>
<template>

<script>
export default {
    props: {
        width: {
            type: String,
            default: '100%'
        },
        height: {
            type: String,
            default: '100%'
        },
        chartsData: {
            type: Object
        }
    },
    data() {
        chart: null,
        option: {
            grid: {...},
            tooltip: {
                trigger: 'axis'
            },
            xAxis: {...},
            yAxis: {...},
            series: [{...}]
        }
    },
    mounted() {
        this.initChart()
    },
    methods: {
        initChart() {
            let chart = this.$echarts.init(this.$el) // $el为简便写法,指代template下根元素,也可以使用元素选择器
            chart.setOption(this.option);

            setTimeout(()=>{
                chart.dispatchAction({
                    type: 'showTip',
                    seriesIndex: 0, // 针对series下第几个数据
                    dataIndex: this.option.series[0].data.length - 1 // 第几个数据
                })
            },1000) // 这里跟图例一样显示最后一条数据的tooltip,chart有一个默认1s时长的渲染动画,执行到末端正好1s,所以设置定时器延时1s

            this.chart = chart;
        }
    },
    beforeDestory() {
        if(!this.chart) return; //页面销毁钩子销毁chart释放资源
        this.chart.dispose();
        this.chart = null
    }
}
</script>

<style></style>

写在最后 

        生活不易,愿疫情早日结束!!!🙏🙏🙏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值