jquery使用echarts实现有向图可视化功能示例


Posted in jQuery onNovember 25, 2019

本文实例讲述了jquery使用echarts实现有向图可视化功能。分享给大家供大家参考,具体如下:

先来看看效果图:

jquery使用echarts实现有向图可视化功能示例

源码如下(force-directed-graph.html):

<!DOCTYPE html>
<html>
<head>
<meta charset="utf8"></meta>
<script src="http://cdn.bootcss.com/echarts/3.2.2/echarts.js"></script>
<script src="http://lib.sinaapp.com/js/jquery/1.10.2/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
  function draw(){
    var text = $("#graph-input").val();
    var data = eval(text);
    var graph = data2Graph(data);
    drawGraph(graph);
  }
  function data2Graph(data) {
    var graph = {}
    var vertices = {}
    var links = [];
    for (var i = 0; i < data.length; i++) {
      var s = String(data[i][0]);
      var t = String(data[i][1]);
      var v = data[i][2];
      vertices[s] = s;
      vertices[t] = t;
      links.push({'source' : s, 'target' : t, 'value' : v});
    }
    var nodes = [];
    $.each(vertices, function(k, v) {
      nodes.push({'name' : v, 'value' : v});
    });
    graph['links'] = links;
    graph['data'] = nodes;
    return graph;
  }
  function drawGraph(graph) {
    var myChart = echarts.init(document.getElementById("echarts-main"));
    var option = {
      tooltip: {},
      series : [
        {
          type: 'graph',
          layout: 'force',
          symbolSize: 30,
          edgeSymbol: ['none', 'arrow'],
          data: graph.data,
          links: graph.links,
          roam: true,
          label: {
            normal: {
              show: true,
              formatter: function (e) {
                return e['data']['value'];
              }
            }
          },
          edgeLabel: {
            normal: {
              show: true,
              position: 'middle'
            }
          },
          force: {
            repulsion: 1000,
            edgeLength: 200
          }
        }
      ]
    };
    myChart.setOption(option);
  }
  $(document).ready(function(){
    draw();
    $("#gen-btn").on("click", function(){
      draw();
    });
  });
</script>
</head>
<body>
<p>在下方文本框内输入有向图JSON([source, target, value]):</p>
<textarea id="graph-input" style="height:210px;width:500px">
[[0,1,10], [1,0,1], [1,2,5], [2,0,5]]
</textarea>
<p><button id="gen-btn">生成力导向图</button></p>
<div id="echarts-main" style="height:320px;width:500px;border:1px dashed;"></div>
</body>
</html>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery中map函数的两种方式
Apr 07 jQuery
jQuery实现拖动效果的实例代码
Jun 25 jQuery
jQuery简介_动力节点Java学院整理
Jul 04 jQuery
jQuery修改DOM结构_动力节点Java学院整理
Jul 05 jQuery
解决jquery appaend元素中id绑定事件失效的问题
Sep 12 jQuery
jQuery完成表单验证的实例代码(纯代码)
Sep 30 jQuery
jQuery+ajax读取json数据并按照价格排序示例
Mar 28 jQuery
jQuery实现文件编码成base64并通过AJAX上传的方法
Apr 12 jQuery
jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】
Apr 26 jQuery
jQuery实现的点击图片居中放大缩小功能示例
Jan 16 jQuery
jQuery实现input[type=file]多图预览上传删除等功能
Aug 02 jQuery
jQuery弹框插件使用方法详解
May 26 jQuery
jQuery Raty星级评分插件使用方法实例分析
Nov 25 #jQuery
jquery 插件重新绑定的处理方法分析
Nov 23 #jQuery
JQuery使用属性addClass、removeClass和toggleClass实现增加和删除类操作示例
Nov 18 #jQuery
Jquery让form表单异步提交代码实现
Nov 14 #jQuery
JQuery发送ajax请求时中文乱码问题解决
Nov 14 #jQuery
Jquery异步上传文件代码实例
Nov 13 #jQuery
jQuery实现滑动星星评分效果(每日分享)
Nov 13 #jQuery
You might like
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
用来解析.htpasswd文件的PHP类
2012/09/05 PHP
让firefox支持IE的一些方法的javascript扩展函数代码
2010/01/02 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
javascript快速排序算法详解
2014/09/17 Javascript
javascript手工制作悬浮菜单
2015/02/12 Javascript
浅析JavaScript 箭头函数 generator Date JSON
2016/05/23 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
Vue.use源码分析
2017/04/22 Javascript
vue数据操作之点击事件实现num加减功能示例
2019/01/19 Javascript
VUE脚手架的下载和配置步骤详解
2019/04/01 Javascript
js 实现 list转换成tree的方法示例(数组到树)
2019/08/18 Javascript
安装多版本Vue-CLI的实现方法
2020/03/24 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
[01:06]DOTA2亚洲邀请赛专属珍藏-荧煌之礼
2017/03/24 DOTA
Python字符串处理之count()方法的使用
2015/05/18 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
python绘制圆柱体的方法
2018/07/02 Python
Window环境下Scrapy开发环境搭建
2018/11/18 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
2019/01/29 Python
python获取全国城市pm2.5、臭氧等空气质量过程解析
2019/10/12 Python
CSS3 不定高宽垂直水平居中的几种方式
2020/03/26 HTML / CSS
localstorage和sessionstorage使用记录(推荐)
2017/05/23 HTML / CSS
大学生水果店创业计划书
2014/01/28 职场文书
计算机专业自荐信范文
2014/05/28 职场文书
学校学雷锋活动总结
2014/06/26 职场文书
爱心捐款感谢信
2015/01/20 职场文书
2016年寒假社会实践活动总结
2015/03/27 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
数据结构课程设计心得体会
2016/01/15 职场文书
《金钱的魔力》教学反思
2016/02/20 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
Nginx源码编译安装过程记录
2021/11/17 Servers
JavaScript的Set数据结构详解
2022/02/18 Javascript
SQL Server中T-SQL标识符介绍与无排序生成序号的方法
2022/05/25 SQL Server
Hive导入csv文件示例
2022/06/25 数据库