折线图有 18 个系列,图例全排成一行,每项只剩两个字,后面的直接叠在一起,320 宽的容器里根本点不中。乍看像缓存或者权限的锅,追下去往往不是。
legend: {
type: 'scroll', bottom: 0, itemWidth: 10, itemHeight: 10,
textStyle: { width: 64, overflow: 'truncate' }
}
追下去是这么回事:legend 没有设宽度和翻页方式,默认横向排一行,容器不够就把文字压扁。itemGap 和文字宽度都没给上限。
「ECharts 图例拥挤」相关的日志我一般连着看前后五分钟,单看一条报错经常判断不出是哪一步失败。验证用真实数据走一遍,测试数据太干净,边界情况根本碰不到。
能分两步做的操作就别合成一步,中间看一眼返回值,出问题好判断。报错里带路径的,先去看那个路径在不在、权限对不对。
同一份配置存在多处的,先确认改的是被加载的那一份。
具体做法是,把 legend 的 type 改成 scroll 允许翻页;图例挪到图表下方 单独占一到两行;给文字设宽度和省略 避免长名字挤在一起。
验收就看一点,图例只占两行且能翻页,每一项文字都能完整辨认。
