实现Echarts中力导布局节点的固定

466 阅读1分钟

使用背景: Echarts力引导图中节点拖拽后会还原, 且Echarts中没有相关配置。

例如:

image.png

解决办法: 在查配置的过程了解到发现event事件中能获取到拖取节点末尾时的x,y,就想到可以将此时的x,y赋值给该 节点作为初始的位置,并刷新图谱。

具体解决: 将拖拽结束时位置params.event.offsetX/Y赋 值给拖拽节点的初始data[params.dataIndex].x/y 并 重新setOption()刷新图谱。经实验可行,具体代码如下。

this.chart.on('mouseup', function(params) {
        option.series[0].data[params.dataIndex].x = params.event.offsetX
        option.series[0].data[params.dataIndex].y = params.event.offsetY
        option.series[0].data[params.dataIndex].fixed = true
        that.chart.setOption(option)
      })

其中that可以根据情况改成this