echarts 关系环形图

该博客展示了如何利用Echarts库来创建一个LesMiserables的环形图,通过加载数据并设置图形属性如节点标签、线样式和动画效果,实现了数据的动态展示。此外,还配置了图例、提示框和标题,使得图表具有良好的交互性和可读性。

下定决心,好好过一天 ~
在这里插入图片描述
数据说明:
在这里插入图片描述
每个节点的信息
在这里插入图片描述
每个点的连接关系



var ROOT_PATH = 'https://cdn.jsdelivr.net/gh/apache/echarts-website@asf-site/examples';

var chartDom = document.getElementById('main');
var myChart = echarts.init(chartDom);
var option;

myChart.showLoading();
$.getJSON(ROOT_PATH + '/data/asset/data/les-miserables.json', function (graph) { //处理数据
    myChart.hideLoading();

    graph.nodes.forEach(function (node) { //遍历
        node.label = {
            show: node.symbolSize > 30
        };
    });

    option = {
        title: { //标题
            text: 'Les Miserables',
            subtext: 'Circular layout',
            top: 'bottom',
            left: 'right'
        },
        tooltip: {},
        legend: [{ //图例组件展现了不同系列的标记(symbol),颜色和名字。可以通过点击图例控制哪些系列不显示。
            data: graph.categories.map(function (a) {
                return a.name;
            })
        }],
        animationDurationUpdate: 1500, //数据更新动画的时长,支持回调函数,可以通过每个数据返回不同的时长实现更戏剧的更新动画效果:
        animationEasingUpdate: 'quinticInOut', //数据更新动画的缓动效果。
        series: [
            {
                name: 'Les Miserables',
                type: 'graph', //关系图
                layout: 'circular', //图的布局,采用环形布局,none不采用任何布局,使用节点x,y作为节点位置
                circular: { //环形布局相关配置
                    rotateLabel: true //是否旋转标签,默认不旋转
                },
                data: graph.nodes, //数据信息
                links: graph.links, //链接关系
                categories: graph.categories, //属于的类
                roam: true, //是否开启鼠标缩放和平移漫游。默认不开启。如果只想要开启缩放或者平移,可以设置成 'scale' 或者 'move'。设置成 true 为都开启
                label: { //图形上的文本标签,可用于说明图形的一些数据信息,比如值,名称等。
                    position: 'right',
                    formatter: '{b}' //{a}:系列名。{b}:数据名。{c}:数据值。
                },
                lineStyle: { //关系边的公用线条样式
                    color: 'source', //设置为'source'或者'target'特殊值,此时边会自动取源节点或目标节点的颜色作为自己的颜色。
                    curveness: 0.3 //边的曲度,支持从 0 到 1 的值,值越大曲度越大。
                }
            }
        ]
    };

    myChart.setOption(option);
});

option && myChart.setOption(option);

可以使用 Echarts 库创建自定义的环形环形常用于展示各个类别在整体中的占比关系,通过编写源代码借助 Echarts 提供的功能和选项来实现 [^1]。 ECharts 为用户提供了详细帮助文档,其中介绍了每类表及各类组件的使用方法,并且每类表都有丰富实例,使用时可参考实例代码并稍加修改以满足自身表展示需求 [^2]。 以下是一个简单使用 ECharts 编写环形的示例代码: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>ECharts 环形示例</title> <!-- 引入 ECharts 文件 --> <script src="https://cdn.jsdelivr.net/npm/echarts@5.4.2/dist/echarts.min.js"></script> </head> <body> <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM --> <div id="main" style="width: 600px;height:400px;"></div> <script type="text/javascript"> // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(document.getElementById('main')); // 指定表的配置项和数据 var option = { series: [ { type: 'pie', radius: ['40%', '70%'], // 设置环形的内外半径 avoidLabelOverlap: false, label: { show: false, position: 'center' }, emphasis: { label: { show: true, fontSize: '30', fontWeight: 'bold' } }, labelLine: { show: false }, data: [ { value: 1048, name: '搜索引擎' }, { value: 735, name: '直接访问' }, { value: 580, name: '邮件营销' }, { value: 484, name: '联盟广告' }, { value: 300, name: '视频广告' } ] } ] }; // 使用刚指定的配置项和数据显示表。 myChart.setOption(option); </script> </body> </html> ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值