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 坐标位置开始,形成了完美的对齐效果。

相关推荐
樱花落木兰6 小时前
SpringBoot + ECharts 后台数据统计报表模块实战
java·javascript·spring boot·ai·log4j·github·echarts
小小尚@10 小时前
WebGIS 开发利器|MapLand 在线行政区划 GeoJSON 边界预览下载平台
echarts·地图·geojson·webgis
千里码aicood1 天前
基于ECharts的电商平台用户行为数据分析
信息可视化·数据分析·echarts
paopaokaka_luck1 天前
个人综合管理小程序(echarts数据看板、健康数据记录与趋势查看、目标拆解和进度管理、日程待办与番茄钟、习惯打卡、收支统计、个人生活记录、跨模块智能提醒)
前端·javascript·spring·小程序·数据分析·echarts·生活
paopaokaka_luck8 天前
智慧社区综合服务小程序(人脸识别、AI问答、Echarts图形化分析)
前端·javascript·spring boot·spring·数据分析·echarts
paopaokaka_luck8 天前
考研政治刷题小程序(AI推荐题目、ECharts数据分析、章节练习与专项训练、模拟考试、错题本与收藏夹、学习打卡与目标管理、题库和组卷维护)
前端·javascript·spring boot·spring·数据分析·echarts
ezjoke9 天前
echarts 动态字节单位轴,1024进制,B,KB,MB,GB附echarts示例
echarts·字节单位转换
paopaokaka_luck12 天前
小学非遗科普平台(AI 非遗科普问答,ECharts学情数据、非遗资源分类与审核,资源收藏下载与学习记录,学习任务发布和作品评分,活动报名签到与统计)
java·人工智能·spring·信息可视化·数据分析·echarts
sibylyue19 天前
【报表和BI大屏】ECharts数据可视化大屏 / 驾驶舱
前端·信息可视化·echarts
YWL20 天前
OpenLayers+ECharts联动:地图点击联动图表,数据可视化大屏方案
前端·信息可视化·vue·echarts·openlayers