首先,你可以监听echarts的节点点击事件,使用option中的series配置项的emphasis来设置点击节点的样式,然后使用expandAndCollapse方法来展开或折叠节点。下面是一个示例代码:// 监听点击事件 myChart.on('click', function (params) { // 获取点击的节点的层级和父节点 var level = params.data.depth; var parent = params.data.parent; // 遍历所有节点 myChart.getOption().series[0].data.forEach(function (node) { // 当节点的层级和父节点与点击的节点相同,则展开;否则折叠 if (node.depth === level && node.parent === parent) { node.emphasis = true; // 设置点击节点的样式 } else { node.emphasis = false; // 设置其他节点的样式 } }); // 调用expandAndCollapse方法展开或折叠节点 myChart.dispatchAction({ type: 'treeExpandAndCollapse', seriesIndex: 0, dataIndex: params.dataIndex }); // 更新图表 myChart.setOption(myChart.getOption()); });
首先,你可以监听echarts的节点点击事件,使用option中的series配置项的emphasis来设置点击节点的样式,然后使用expandAndCollapse方法来展开或折叠节点。
下面是一个示例代码: