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 Plupload上传插件的使用
Apr 19 jQuery
jQuery滚动插件scrollable.js用法分析
May 25 jQuery
jQuery实现选中行变色效果(实例讲解)
Jul 06 jQuery
jQuery实现左右滑动的toggle方法
Mar 03 jQuery
jQuery获取随机颜色的实例代码
May 21 jQuery
jQuery实现table表格信息的展开和缩小功能示例
Jul 21 jQuery
jQuery md5加密插件jQuery.md5.js用法示例
Aug 24 jQuery
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
May 13 jQuery
jquery ui 实现 tab标签功能示例【测试可用】
Jul 25 jQuery
JS 遍历 json 和 JQuery 遍历json操作完整示例
Nov 11 jQuery
jQuery轮播图功能制作方法详解
Dec 03 jQuery
jQuery实现html可联动的百分比进度条
Mar 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 使用 Imagick 裁切/生成缩略图/添加水印自动检测和处理 GIF
2016/02/19 PHP
php解析mht文件转换成html的实例
2017/03/13 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
微信支付之JSAPI公众号支付详解
2019/05/15 PHP
使用Modello编写JavaScript类
2006/12/22 Javascript
让FireFox支持innerText的实现代码
2009/12/01 Javascript
基于JQuery的多标签实现代码
2012/09/19 Javascript
一个封装js代码-----展开收起效果示例
2013/07/03 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
JavaScript自定义数组排序方法
2015/02/12 Javascript
JavaScript实现的圆形浮动标签云效果实例
2015/08/06 Javascript
JS获取IMG图片高宽的简单实例
2016/05/17 Javascript
AngularJS 模块化详解及实例代码
2016/09/14 Javascript
基于BootStrap栅格栏系统完成网站底部版权信息区
2016/12/23 Javascript
JavaScript简单编程实例学习
2020/02/14 Javascript
vue实现购物车列表
2020/06/30 Javascript
Python分析学校四六级过关情况
2017/11/22 Python
python列表推导和生成器表达式知识点总结
2020/01/10 Python
pandas中的数据去重处理的实现方法
2020/02/10 Python
ubuntu 安装pyqt5和卸载pyQt5的方法
2020/03/24 Python
Pytorch十九种损失函数的使用详解
2020/04/29 Python
美国地毯购买网站:Rugs USA
2019/02/23 全球购物
什么叫做SQL注入,如何防止
2016/10/04 面试题
品恩科技软件测试面试题
2014/10/26 面试题
高一英语教学反思
2014/01/22 职场文书
浪漫婚礼主持词
2014/03/14 职场文书
产品设计开发计划书
2014/05/07 职场文书
全运会口号
2014/06/20 职场文书
班主任2015新年寄语
2014/12/08 职场文书
525心理健康活动总结
2015/05/08 职场文书
在校学生证明格式
2015/06/24 职场文书
《给予树》教学反思
2016/03/03 职场文书
演讲稿之我的初心我的成长
2019/08/12 职场文书
人民币符号
2022/02/17 杂记
java项目构建Gradle的使用教程
2022/03/24 Java/Android
Linux服务器离线安装 nginx的详细步骤
2022/06/16 Servers