echarts配置环形饼图的参数,以及牵引线显示百分比,中间数据,牵引线标签不重叠...

最近项目有多处是用echarts的,有环形图,折线图,饼图,总结了一下。

本次主要讲环形图,折线图在下期。

 

 这个是最终的效果图。下面附上代码

//三种占比
var myChartType = echarts.init(document.getElementById('type_chart'));
var gailanTotal="";
option = {
    legend: {
        icon: "circle",
        orient: 'vertical',
        right: 50,
        bottom: 20,
        selectedMode: false, //取消图例上的点击事件
        data: ['轿车', 'SUV', 'MPV']
    },
    //点击提示文字
    tooltip: {
        trigger: 'item',
        formatter: "{a} <br/>{b}: {c} ({d}%)",
        

    },
    //环形颜色
    color: ['#0C7BE3', '#5BA1E3', '#88B7E3'],
    // 设置环形中间的数据
    graphic: [{
        type: 'text',
        left: '34%',
        top: '55%',
        z: 10,
        style: {
            fill: '#1a1a1a',
            text: gailanTotal,
            font: '16px Microsoft YaHei'
        }
    }],
    series: [{
        name: '访问来源',
        type: 'pie',
        radius: ['35%', '55%'], //两个表示环:内半径,外半径
        center: ['43%', '58%'],//左右,上下
        avoidLabelOverlap: false,
        label: {
            normal: {
                show: true,
                position: 'outer',
                // formatter: '{d}%, {c} \n\n',
                //模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。
                formatter: "{a_set|{b},{d}%}\n{c_set|{c}辆}\n\n\n",
                borderWidth: 20,
                borderRadius: 4,
                padding: [90, -50],
                rich: {
                    a_set: {
                        color: "#1a1a1a",
                        lineHeight: 20,
                        align: "center"
                    },
                    c_set:{
                        color: "#808080",
                    }
                   
                }
            },
            emphasis: {
                show: true,
                textStyle: {
                    fontSize: '30',
                    fontWeight: 'bold',
                }
            }
        },
        //牵引线条颜色
        labelLine: {
            normal: {
                show: true,
                length: 30,
                length2: 50,
                lineStyle: {
                    color: '#808080'
                },
            }
        },
        data: [],
    }]
};
myChartType.setOption(option);

因为是动态获取的,索引中间的总数,还有环形的数据都在接口中获取的

$.ajax({
    type: "get",
    url: "http:///salesSearch/?Stype="+stype+"&date="+date,
    dataType: "jsonp",
    success: function (json) {
        console.log(json);
        var item=json;
         var gailan=json.gailan;
//总数 gailanTotal=json.gailan[0].value+json.gailan[1].value+json.gailan[2].value; console.log(gailanTotal);// 行业概览 myChartType.setOption({ series: { data:gailanData }, // //环形心总数 graphic:{ style:{ text:gailanTotal } } }) }, error: function () { console.log("请求失败"); }

 有时候数据多了,牵引线的会重叠

 

饼图中的series有个avoidLabelOverlap属性,改为true之后就不会重叠 

 

 avoidLabelOverlap:是否启用防止标签重叠策略,默认开启,在标签拥挤重叠的情况下会挪动各个标签的位置,防止标签间的重叠。

原文链接https://blog.csdn.net/qq_37899792/article/details/90747057?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

Echarts 解决饼图文字过长重叠的问题  以下是解决方法

https://blog.csdn.net/weixin_41384423/article/details/88049983?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于echarts立体环形饼图的绘制,你可以按照以下步骤进行操作: 1. 首先,确保你已经引入了echarts的库文件。你可以在HTML文件中通过`<script>`标签引入echarts库。 2. 创建一个HTML元素,例如一个`<div>`容器,用于显示echarts表。给这个元素设置一个唯一的ID,以便后续调用。 3. 在JavaScript中,使用`echarts.init`方法初始化一个echarts实例,并指定要绘制表的容器ID。 4. 定义数据源,即环形饼图数据数据通常是一个包含多个对象的数组,每个对象包含名称和对应的数值。 5. 配置环形饼图的样式和布局。可以设置环形饼图的大小、颜色、标签显示等。 6. 使用`setOption`方法将数据源和配置应用到echarts实例上。 下面是一个示例代码,展示如何使用echarts绘制立体环形饼图: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>ECharts 立体环形饼图示例</title> <script src="https://cdn.jsdelivr.net/npm/echarts@5.1.2/dist/echarts.min.js"></script> </head> <body> <div id="chart" style="width: 600px; height: 400px;"></div> <script> // 初始化echarts实例 var myChart = echarts.init(document.getElementById('chart')); // 定义数据源 var data = [ { name: '数据1', value: 335 }, { name: '数据2', value: 310 }, { name: '数据3', value: 234 }, { name: '数据4', value: 135 }, { name: '数据5', value: 1548 } ]; // 配置环形饼图的样式和布局 var option = { series: [ { type: 'pie', radius: ['50%', '70%'], // 控制内外半径,实现环形效果 avoidLabelOverlap: false, label: { show: true, position: 'outside' // 标签显示在外部 }, emphasis: { label: { show: true, fontSize: '20', fontWeight: 'bold' } }, labelLine: { show: true }, data: data } ] }; // 使用配置项和数据源绘制表 myChart.setOption(option); </script> </body> </html> ``` 以上代码会在指定的`<div id="chart">`元素中绘制一个立体环形饼图,你可以根据实际需求修改数据和样式配置。希望这能够帮到你!如有更多问题,请继续提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值