echart实现点击折线上的点在控制台显示折线信息、隐藏折线

问了chatgpt,但是一次回答可以实现前者不能实现后者,又一次回答能实现后者不能实现后者,于是整合了两次代码实现了需求。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>ECharts 折线图示例</title>
    <!-- 引入 ECharts 库 -->
    <script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>
</head>
<body>
<!-- 容器,用来渲染折线图 -->
<div id="chart-container" style="width: 600px; height: 400px;"></div>

<script>
    // 假设折线图的容器的 DOM 节点的 ID 是 "chart-container"
    var chartDom = document.getElementById('chart-container');
    var myChart = echarts.init(chartDom);

    // 假设折线图的数据是如下格式的:
    var data = {
        xAxis: {
            type: 'category',
            data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
        },
        yAxis: {
            type: 'value'
        },
        series: [{
            data: [820, 932, 901, 934, 1290, 1330, 1320],
            type: 'line',
            name: '折线1'
        }, {
            data: [550, 530, 501, 534, 690, 630, 720],
            type: 'line',
            name: '折线2'
        }]
    };

    // 使用上面的数据初始化折线图
    myChart.setOption(data);

    // 为折线图添加点击事件
    myChart.on('click', function (params) {
        // 获取点击的数据点的信息
        //var dataIndex = params.dataIndex;
        //var seriesIndex = params.seriesIndex;
        var seriesName = params.seriesName;
        //var value = params.value;

        var series = myChart.getOption().series[params.seriesIndex];
        console.log('你点击了折线 "' + params.seriesName + '",该折线的数据如下:');
        console.log(series.data);
        // 找到对应的折线
        // var series = myChart.getOption().series[seriesIndex];
        //
        // // 输出该折线的信息
        // console.log('你点击了折线 "' + seriesName + '",该折线的数据如下:');
        // console.log(series.data.map(function (item) {
        //     return item[1];
        // }));

        // 隐藏该折线
        myChart.setOption({
            legend: {
                selected: {
                    [seriesName]: false
                }
            },
            series: [{
                name: seriesName,
                data: [],
                showSymbol: false
            }]
        });
    });
</script>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

vener__

如果解决了困扰你的难题

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

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

打赏作者

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

抵扣说明:

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

余额充值