Echarts 解决饼图文字显示不全问题

文本越界

文本超出容器边界。可以调整center值。

     series: [
          {
            type: 'pie',
            radius: ['50%', '65%'],
            label: {
              show: true,
              position: 'top',
              color: '#1B233E',
              formatter: function (params) {
                return params.name + ' ' + params.percent + '%'
              }
            },
            data: []
          }
        ]
      series: [
          {
            type: 'pie',
            radius: ['50%', '65%'],
            center: ['50%', '55%'],
            label: {
              show: true,
              position: 'top',
              color: '#1B233E',
              formatter: function (params) {
                return params.name + ' ' + params.percent + '%'
              }
            },
            data: []
          }
        ]

文字过长重叠的问题

解决方案

第一步:调整文字的显示大小,手机上文字可以更小,这里我用的是8px字号

第二步:设置最小扇区角度,minAngle(最小的扇区角度(0 ~ 360),用于防止某个值过小导致扇区太小影响交互)

第三步:avoidLabelOverlap(是否启用防止标签重叠策略,默认默认开启)

第四步:文字换行展示,echarts给我们提供了一个 formatter(标签内容格式器,支持字符串模板和回调函数两种形式,字符串模板与回调函数返回的字符串均支持用

\n换行)属性。

     series: [
          {
            type: 'pie',
            radius: ['50%', '65%'],
            center: ['50%', '55%'],
            minAngle: 2, // 最小的扇区角度(0~360),用于防止某个值过小导致扇区太小影响交互
            avoidLabelOverlap: true, // 是否启用防止标签重叠策略
            label: {
              show: true,
              position: 'top',
              color: '#1B233E',
              formatter: function (params) {
                return params.name + ' ' + params.percent + '%'
              }
            },
            data: []
          }
        ]

 最后效果

 

posted @ 2022-11-29 17:04  rachelch  阅读(5967)  评论(0编辑  收藏  举报