ECharts获取引导线在左右方向自定义引导线内容

ECharts获取引导线在左右方向自定义引导线内容

类似这种效果:

image

其中的圆环区分左右布局。

labelLayout函数

option.series[index].labelLayout

其中data1就是series数据源。

labelLayout: (params) => {
  // console.log(params)
  const isLeft = params.labelRect.x < chart.getWidth() / 2
  // console.log(isLeft)
  params.text &&
    labelLinePostionList.push({
      data: data1[params.dataIndex],
      isLeft,
      x: params.labelRect.x - params.labelRect.width * (isLeft ? 0 : -1),
      y: params.labelRect.y
    })
}

graphic自定义

chart.setOption({
  graphic: [
    ...labelLinePostionList.map((item) => {
      console.log(item)
      return {
        type: 'text',
        style: {
          text: item.data.name,
          x: item.x - (item.isLeft ? 38 : -2),
          y: item.y + 2,
          fill: '#fff'
        }
      }
    }),
    ...labelLinePostionList.map((item) => {
      return {
        type: 'text',
        style: {
          fontSize: 16,
          fontWeight: 'bold',
          text: item.data.value,
          x: item.x - (item.isLeft ? 14 : -2),
          y: item.y + 20,
          fill: '#fff'
        }
      }
    })
  ]
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值