echarts 关系图节点图自定义及关系边上提示内容自定义

2023-10-13 06:40

本文主要是介绍echarts 关系图节点图自定义及关系边上提示内容自定义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

说明:

我要实现的效果图是个一对多的图(多对多类似),echarts官网的数据文件是xml格式,要知道他规定的数据格式可以通过“F12”输出的方式查看转换后的json格式,然后取后台数据时,处理成正确格式即可。

效果图:

                      175225_LNi1_2829989.png

鼠标放到连接线上的显示效果:

 

              175316_cLhI_2829989.png

代码:

var data_obj = [{name: '我', value: '', category: 1, symbolSize: 30, symbol: 'image://../images/me.png'}];
var link_obj = [];MySky();//    请求后台数据
function MySky() {$.ajax({url: '<?php echo Configure::read('webpath') ?>MyFriends/checkRow',success: function (data) {var obj = JSON.parse(data);if (obj.total > 0) {for (var i = 0; i < obj.total; i++) {data_obj[i + 1] = {name: obj.rows[i].gsmc,value: '',draggable: true,symbolSize: 40,//图片大小category: 0,symbol: 'image://../images/company.png'//自定义图片};link_obj[i] = {source: '我',target: obj.rows[i].gsmc}}BusinessCharts();} else {//若数据为空,则显示空数据图片$("#test").html('<div id="picNone" style="margin:0 auto;padding:118px 0;"><img src="<?php echo Configure::read("webpath"); ?>images/data_none.png">抱歉,暂时没有数据~~~ </div>');}}});
}//    echarts调用
function BusinessCharts() {var myChart = echarts.init(document.getElementById('test'));var categories = [{name: '公司名称'}, {name: '我'}];myChart.setOption({title: {text: ''},tooltip: {trigger: 'item',formatter: function (params) {//连接线上提示文字格式化if (params.data.source) {//注意判断,else是将节点的文字也初始化成想要的格式return params.data.source + '是【' + params.data.target + '】的居间人';}else {return params.name;}}},legend: [{show:false// selectedMode: 'single',
//          data: categories.map(function (a) {
//                return a;
//          })}],animation: true,series: [{name: '',type: 'graph',layout: 'force',data: data_obj,links: link_obj,categories: categories,roam: true,label: {normal: {position: 'right'}},force: {repulsion: 1000},itemStyle:{normal:{label:{show: false,//如果设置为true,节点文字则一直显示formatter: '{b}'},color:'#000',labelLine :{show:true}}}}]});
}

注意: graph的每个node的图片都可以自定义,graph有一个symbol属性,可以自定义,这里需要注意一下,symbol的images的格式“image://../images/node.png”最好是能够写绝对路径,加上“//..”回到你的根目录。

参考博客:http://blog.csdn.net/qingfeng_or_qinfeng/article/details/53785705

转载于:https://my.oschina.net/jingyao/blog/813987

这篇关于echarts 关系图节点图自定义及关系边上提示内容自定义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201437

相关文章

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型

Java 中的 equals 和 hashCode 方法关系与正确重写实践案例

《Java中的equals和hashCode方法关系与正确重写实践案例》在Java中,equals和hashCode方法是Object类的核心方法,广泛用于对象比较和哈希集合(如HashMa... 目录一、背景与需求分析1.1 equals 和 hashCode 的背景1.2 需求分析1.3 技术挑战1.4

Python进行word模板内容替换的实现示例

《Python进行word模板内容替换的实现示例》本文介绍了使用Python自动化处理Word模板文档的常用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友... 目录技术背景与需求场景核心工具库介绍1.获取你的word模板内容2.正常文本内容的替换3.表格内容的

SpringBoot AspectJ切面配合自定义注解实现权限校验的示例详解

《SpringBootAspectJ切面配合自定义注解实现权限校验的示例详解》本文章介绍了如何通过创建自定义的权限校验注解,配合AspectJ切面拦截注解实现权限校验,本文结合实例代码给大家介绍的非... 目录1. 创建权限校验注解2. 创建ASPectJ切面拦截注解校验权限3. 用法示例A. 参考文章本文

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

Java使用正则提取字符串中的内容的详细步骤

《Java使用正则提取字符串中的内容的详细步骤》:本文主要介绍Java中使用正则表达式提取字符串内容的方法,通过Pattern和Matcher类实现,涵盖编译正则、查找匹配、分组捕获、数字与邮箱提... 目录1. 基础流程2. 关键方法说明3. 常见场景示例场景1:提取所有数字场景2:提取邮箱地址4. 高级

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

聊聊springboot中如何自定义消息转换器

《聊聊springboot中如何自定义消息转换器》SpringBoot通过HttpMessageConverter处理HTTP数据转换,支持多种媒体类型,接下来通过本文给大家介绍springboot中... 目录核心接口springboot默认提供的转换器如何自定义消息转换器Spring Boot 中的消息

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Python自定义异常的全面指南(入门到实践)

《Python自定义异常的全面指南(入门到实践)》想象你正在开发一个银行系统,用户转账时余额不足,如果直接抛出ValueError,调用方很难区分是金额格式错误还是余额不足,这正是Python自定义异... 目录引言:为什么需要自定义异常一、异常基础:先搞懂python的异常体系1.1 异常是什么?1.2