css-Echarts图表tooltip / label文本过长 超出屏幕边缘或容器范围

1.tooltip 在靠近浏览器边缘时,部分内容看不见

1.1实际场景

文本过长或者Echarts刚好处于可视屏幕边缘导致超出的提示文本被截取。

1.2tooltip解决方法

设置确保tooltip不受父容器限制

复制代码
appendToBody: true,

设置让 tooltip 始终限制在视口内,自动调整位置

复制代码
confine: true, 

完整示例

javascript 复制代码
tooltip: {
  trigger: 'item',
  appendToBody: true,
  confine: true, // 自动防止溢出视口
  formatter: (params) => {
    return `${params.name}<br/>${params.value}人 (${Math.round(params.percent)}%)`
  }
}

2.label文本过长导致显示问题

2.1实际场景

文本过长被容器截取

2.2label解决方法

设置宽度,超出部分省略号显示,以及换行处理

javascript 复制代码
label: {
  show: true,
  position: 'inside', // 或 'outside'
  overflow: 'truncate', // 超出部分用省略号
  width: 80,            // 限制宽度(单位 px)
  formatter: (params: any) => {
    const percent = Math.round(params.percent)
    return `${params.value}人\n${percent}%`
  },
  fontSize: '1.2em',
  color: '#fff',
  lineHeight: 16,
  rich: richConfig
}

或者读取对应的文本进行截取,超过多少字进行截取添加省略号

javascript 复制代码
 label: {
          show: true,
          position: 'outside',
          formatter: (params: any) => {
            const name = params.name.length > 4 ? params.name.substring(0, 4) + '.' : params.name
            return `{text|${name}${''}}{color_${idx}|${params.value}}`
          },
}
相关推荐
xiaofeichaichai33 分钟前
Webpack
前端·webpack·node.js
问心无愧05131 小时前
ctf show web入门111
android·前端·笔记
唐某人丶1 小时前
模型越来越强,我们还需要 Agent 工程吗?—— 从价值重估到 Harness 实践
前端·agent·ai编程
智码看视界1 小时前
现代Web开发基础:全栈工程师的起航点
前端·后端·c5全栈
JS菌1 小时前
手写一个 AI Agent 全栈项目:从沙箱执行到子智能体的完整实现
前端·人工智能·后端
excel3 小时前
HLS TS 文件损坏的元凶:Git 提交与拉取
前端
Aphasia3113 小时前
https连接传输流程
前端·面试
徐小夕3 小时前
万字长文!千万级文档 RAG 知识库系统落地实践
前端·算法·github
threelab3 小时前
Three.js 物理模拟着色器 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器