ECharts 图例文本对齐,告别长短不一!

ECharts 饼图图例格式化实战

效果图

实现

思路: 我们可以将图例文本划分为两个独立的区域:

  1. name 区域:固定宽度(例如 80px),所有名称左对齐。
  2. percent 区域:紧接在 name 区域之后显示,由于 name 宽度固定,所有百分比将从同一垂直位置开始,实现了整齐的左对齐。

关键代码实现:

javascript 复制代码
legend: {
    orient: 'vertical', // 垂直布局
    top: '12%',
    right: '0',
    itemWidth: 10,
    itemHeight: 10,
    icon: 'circle',
    textStyle: {
        fontSize: 12,
        color: '#666',
        // 核心:定义富文本样式
        rich: {
            name: {
                width: 80,      // 固定宽度
                align: 'left'   // 名称左对齐
            }
            // percent 区域不需要额外配置,使用默认样式即可
        }
    },
    formatter: function (name) {
        const item = pieChartData.find((d) => d.name === name);
        if (item) {
            const percent = ((item.value / pieTotal) * 100).toFixed(2) + '%';
            // 使用模板字符串 {样式名|内容} 应用 rich 样式
            return `{name|${name}}{percent|  ${percent}}`;
        }
        return name;
    }
}

效果:无论 name 是 4个还是6个字,它都会被限制在 80px 的框内。因此,所有的 percent 内容都会从几乎相同的 x 坐标位置开始,形成了完美的对齐效果。

相关推荐
paopaokaka_luck15 小时前
非遗文物数字化系统(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
前端·javascript·vue.js·人工智能·数据分析·echarts
小小尚@4 天前
WebGIS/ECharts 地图开发|MapLand 在线行政区划边界一键下载 GeoJSON 工具
前端·javascript·echarts
paopaokaka_luck5 天前
基于springboot3+vue3的精准扶贫管理系统(AI 问答、ECharts 图形化分析)
前端·人工智能·echarts
Dreams°1236 天前
【React+TS+ECharts可视化避坑:图表空白、不实时更新、数据池堆积卡顿完整复盘(附完整源码)】
前端·react.js·echarts
二进制漫游记6 天前
ECharts 从入门到实战|前端数据可视化完整教程
前端·信息可视化·echarts
张人玉9 天前
基于 Python 机器学习 与 PyQt5 桌面框架开发的可视化分析系统——基于大数据的网上购物消费行为分析可视化大屏
python·qt·机器学习·echarts·three.js
张人玉11 天前
基于 Python + PyQt5 的水果目标检测与分割可视化系统——水果深度学习识别可视化大屏
python·深度学习·qt·目标检测·sqlite·echarts
paopaokaka_luck12 天前
基于springboot3+vue3+uniapp的河南非遗数字图谱小程序(协同过滤算法、数字图谱展示、ECharts 图形化分析)
java·前端·spring boot·学习·小程序·uni-app·echarts
张人玉14 天前
茶树 NeRF(Neural Radiance Fields,神经辐射场)三维重建与数据分析可视化系统——基于神经辐射场的茶树三维重建方法实现可视化大屏
python·数据挖掘·数据分析·echarts·three.js