jquery使用echarts實(shí)現(xiàn)有向圖可視化功能示例
本文實(shí)例講述了jquery使用echarts實(shí)現(xiàn)有向圖可視化功能。分享給大家供大家參考,具體如下:
先來(lái)看看效果圖:

源碼如下(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>在下方文本框內(nèi)輸入有向圖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">生成力導(dǎo)向圖</button></p>
<div id="echarts-main" style="height:320px;width:500px;border:1px dashed;"></div>
</body>
</html>
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery擴(kuò)展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery切換特效與技巧總結(jié)》、《jQuery遍歷算法與技巧總結(jié)》、《jQuery常見(jiàn)經(jīng)典特效匯總》、《jQuery動(dòng)畫(huà)與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
- jQuery插件echarts設(shè)置折線圖中折線線條顏色和折線點(diǎn)顏色的方法
- 如何使用PHP+jQuery+MySQL實(shí)現(xiàn)異步加載ECharts地圖數(shù)據(jù)(附源碼下載)
- jQuery插件Echarts實(shí)現(xiàn)的漸變色柱狀圖
- jQuery插件echarts實(shí)現(xiàn)的多柱子柱狀圖效果示例【附demo源碼下載】
- jQuery插件echarts實(shí)現(xiàn)的多折線圖效果示例【附demo源碼下載】
- jQuery插件echarts實(shí)現(xiàn)的單折線圖效果示例【附demo源碼下載】
- jQuery插件echarts實(shí)現(xiàn)的去掉X軸、Y軸和網(wǎng)格線效果示例【附demo源碼下載】
- jQuery插件echarts實(shí)現(xiàn)的循環(huán)生成圖效果示例【附demo源碼下載】
- jQuery插件echarts去掉垂直網(wǎng)格線用法示例
- HTML5+JS+JQuery+ECharts實(shí)現(xiàn)異步加載問(wèn)題
- jQuery插件Echarts實(shí)現(xiàn)的雙軸圖效果示例【附demo源碼下載】
相關(guān)文章
jQuery+Ajax實(shí)現(xiàn)無(wú)刷新操作
這篇文章主要介紹了jQuery+Ajax實(shí)現(xiàn)無(wú)刷新操作,分享了采用Ashx+jQuery Ajax實(shí)現(xiàn)“無(wú)刷新登錄”的例子,感興趣的小伙伴們可以參考一下2016-01-01
jQuery中hover與mouseover和mouseout的區(qū)別分析
這篇文章主要介紹了jQuery中hover與mouseover和mouseout的區(qū)別,結(jié)合實(shí)例分析了jQuery中hover與mouseover和mouseout的區(qū)別與使用技巧,需要的朋友可以參考下2015-12-12
Jquery 快速構(gòu)建可拖曳的購(gòu)物車(chē)DragDrop
拖曳功能早已經(jīng)成為各個(gè)網(wǎng)站吸引用戶的一大亮點(diǎn),那有沒(méi)有想過(guò)如何把拖曳功能應(yīng)用到電子商務(wù)網(wǎng)站的購(gòu)物車(chē)功能模塊中呢?2009-11-11
jquery ztree實(shí)現(xiàn)右鍵收藏功能
最近做項(xiàng)目需要使用ztree做一個(gè)右鍵收藏功能,下面小編給大家分享實(shí)例代碼,需要的朋友參考下吧2017-11-11
JQuery對(duì)ASP.NET MVC數(shù)據(jù)進(jìn)行更新刪除
這篇文章主要介紹了JQuery對(duì)ASP.NET MVC數(shù)據(jù)進(jìn)行更新刪除的相關(guān)資料,需要的朋友可以參考下2016-07-07
jQuery關(guān)鍵詞說(shuō)明插件cluetip使用指南
我們?cè)谧鰓eb項(xiàng)目的時(shí)候,經(jīng)常會(huì)使用到提示效果。html自帶的提示效果是label標(biāo)簽的title,但是這個(gè)效果過(guò)于簡(jiǎn)單和難看,并且不方便調(diào)整樣式。今天我偶然發(fā)現(xiàn)個(gè)jQuery的插件,可以很方便的做出漂亮的提示效果。2015-04-04
jQuery實(shí)現(xiàn)等比例縮放大圖片讓大圖片自適應(yīng)頁(yè)面布局
遇到大圖片將頁(yè)面容器“撐破”的情況在進(jìn)行頁(yè)面布局時(shí)會(huì)經(jīng)常遇到吧,在本文將為大家講述使用jQuery實(shí)現(xiàn)按比例縮放大圖片,讓大圖片自適應(yīng)頁(yè)面布局2013-10-10

