echarts tooltip太多会超出显示范围-解决

时间:2022-07-11 16:25:06

以下两种解决方式,能够应对大部分出现此类问题项目

 

tooltip.position: 提示框浮层的位置,默认不设置时位置会跟随鼠标的位置。

可选:string, Array, Function

 

一、解决方法:

 

1、设置x轴固定不动 y轴上下跟随

/*设置x轴左右固定,上下跟随。*/
position: function(point, params, dom, rect, size){
    return [0,point[1]];
}

 

2、设置Y轴上下固定,x左右跟随

/*设置Y轴上下固定,X左右跟随。*/
position: function(point, params, dom, rect, size){
    return [point[1],0];
}

 

 

二、position值的可选类型

Array示例:

  // 绝对位置,相对于容器左侧 10px, 上侧 10 px
  position: [10, 10]
  // 相对位置,放置在容器正中间
  position: ['50%', '50%']

 

Function示例

  position: function (point, params, dom, rect, size) {
      // 固定在顶部
      return [point[0], '10%']; }

 

//参数:
point: 鼠标位置,如 [20, 40]。
params: 同 formatter 的参数相同。
dom: tooltip 的 dom 对象。
rect: 只有鼠标在图形上时有效,是一个用x, y, width, height四个属性表达的图形包围盒。
size: 包括 dom 的尺寸和 echarts 容器的当前尺寸,例如:{contentSize: [width, height], viewSize: [width, height]}。

//返回值:
可以是一个表示 tooltip 位置的数组,数组值可以是绝对的像素值,也可以是相 百分比。
也可以是一个对象,如:{left: 10, top: 30},或者 {right: '20%', bottom: 40}。

 

Str示例

'inside'
//鼠标所在图形的内部中心位置,只在 trigger 为'item'的时候有效。

'top'
//鼠标所在图形上侧,只在 trigger 为'item'的时候有效。

'left'
//鼠标所在图形左侧,只在 trigger 为'item'的时候有效。

'right'
//鼠标所在图形右侧,只在 trigger 为'item'的时候有效。

'bottom'
//鼠标所在图形底侧,只在 trigger 为'item'的时候有效。