拓扑框架Jtopo

使用HTML5制作网络拓扑图的方式有主要有Canvas和SVG,Jtopo采用HTML5的Canvas实现,可以使用到Html5的平台(PC,手机,平板),免费易用,适用于浏览器IE, Firefox, Safari,Chrome等

开发流程:
1.引入jtopo.js文件

<script type="text/javascript" src="js/jtopo-min.js"></script>

2.Canvas标签定义拓扑图

<canvas width="910" height="400" id="canvas"></canvas>

3.绘制拓扑图

$(document).ready(function(){
var canvas = document.getElementById(‘canvas‘);
var stage = new JTopo.Stage(canvas);//创建舞台对象
var scene = new JTopo.Scene(stage); //创建场景对象
scene.alpha = 1;

//加节点
function addNode(text, color){
var node = new JTopo.Node();
node.setImage(‘./img/topo/‘+ color +‘.png‘, true);
node.fontColor = ‘0,0,0‘;
scene.add(node);

node.mouseover(function(){
this.text = text;
});
node.mouseout(function(){
this.text = null;
});
return node;
}

//连线
function addLink(nodeA, nodeZ){
var link = new JTopo.FlexionalLink(nodeA, nodeZ);
link.strokeColor = ‘204,204,204‘;
link.lineWidth = 1;
scene.add(link);
return link;
}

var rootNode = addNode(‘root‘, ‘gray‘);

var icons = [‘green‘, ‘blue‘, ‘red1‘, ‘red2‘];
for(var i=0; i<icons.length; i++){

var node = addNode(‘second_‘ + i, icons[i]);
addLink(rootNode, node);
if(i == 0 || i == icons.length - 1){
for(var j=0; j<4; j++){
var thirdNode = addNode(‘third_‘ + j, ‘green‘);
addLink(node, thirdNode);

}
}
}

// 树形布局
scene.doLayout(JTopo.layout.TreeLayout(‘down‘, 30, 107));
});

更多实例官网中都有

时间: 2024-12-07 15:04:29

拓扑框架Jtopo的相关文章

[原创] 针对某P2P业务平台制定的系统拓扑方案

本文只代表作者在一定阶段的认识与理解. 一.写作前提 最近一个朋友找到我,说他们公司期望做一个Web Application,请我帮他们做一个系统平台的拓扑方案,需要考虑到相关系统负载问题,鉴于此需求,制定本文的设计方案(无法公司应用及企业信息). 环境信息如下: 开发语言:PHP 5.3, Object C,Java: 数据库系统:My SQL 5.5: 应用平台:XXX4.0平台. 二.本文内容 系统架构及说明 近期实施方案 长期实施方案 总结 三.系统架构及说明 依据对平台需求的总体分析,

P4: Programming Protocol-Independent Packet Processors

Name of article:Programming Protocol-Independent Packet Processors Origin of the article:Bosshart P , Daly D , Izzard M , et al. Programming Protocol-Independent Packet Processors[J]. Acm Sigcomm Computer Communication Review, 2013, 44(3):87-95. ABST

Southern African 2001 框架折叠 (拓扑序列的应用)

题目:考虑五个图片堆叠在一起,比如下面的9 * 8 的矩阵表示的是这些图片的边缘框. 现在上面的图片顺序为图片1放在最底下,5放在最顶上.如果任何图片的边框覆盖了其他图片的边框,被覆盖的部分不会被显示出来. 下面是一个栗子: 那么从低向上图片的堆叠顺序为 EDABC,现在的问题是给出一个堆叠后的表示,要确定从低向上的图片的堆叠顺序. 下面是判定规则: 1.图片一定是由一个字母表示并且每条边至少三个字符 2.题目保证至少会给出每条边的一个字母,一个角的一个字符代表两条边 3.图片边框用大写字母表示

[转]分布式计算框架综述

本来是发表到科技论在线的,谁知道被退稿了,那就发到这里来吧. 0      引言 随着互联网的发展,web2.0时期[1]的到来,人类正式进入了信息爆炸时期的.海量的信息在很多应用都会出现,比如一些社交网络应用中记录用户行为日志通常都是以GB甚至是TB为单位的.常规的单机计算模式已经不能支撑如此巨大的数据量.所以,计算必须以分布式的把巨大的计算任务分成小的单机可以承受的计算任务,在这种情况下分布式计算框架与云计算[2]出现. 1      分布式计算框架背景介绍 我们的互联网从Web 1.0迈入

POJ1128 Frame Stacking(拓扑排序)经典

Frame Stacking Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4454   Accepted: 1509 Description Consider the following 5 picture frames placed on an 9 x 8 array. ........ ........ ........ ........ .CCC.... EEEEEE.. ........ ........ ..

流式处理框架对比

分布式流处理是对无边界数据集进行连续不断的处理.聚合和分析的过程,与MapReduce一样是一种通用计算框架,期望延迟在毫秒或者秒级别.这类系统一般采用有向无环图(DAG).DAG是任务链的图形化表示,用它来描述流处理作业的拓扑.在选择不同的流处理系统时,通常会关注以下几点: 运行时和编程模型:平台框架提供的编程模型决定了许多特色功能,编程模型要足够处理各种应用场景. 函数式原语:流处理平台应该能提供丰富的功能函数,比如,map或者filter这类易扩展.处理单条信息的函数;处理多条信息的函数a

storm:最火的流式处理框架

本文出处:www.cnblogs.com/langtianya/p/5199529.html 伴随着信息科技日新月异的发展,信息呈现出爆发式的膨胀,人们获取信息的途径也更加多样.更加便捷,同时对于信息的时效性要求也越来越高.举个搜索场景中的例子,当一个卖家发布了一条宝贝信息时,他希望的当然是这个宝贝马上就可以被卖家搜索出来.点击.购买啦,相反,如果这个宝贝要等到第二天或者更久才可以被搜出来,估计这个大哥就要骂娘了.再举一个推荐的例子,如果用户昨天在淘宝上买了一双袜子,今天想买一副泳镜去游泳,但是

大数据框架对比:Hadoop、Storm、Samza、Spark和Flink--容错机制(ACK,RDD,基于log和状态快照),消息处理at least once,exactly once两个是关键

分布式流处理是对无边界数据集进行连续不断的处理.聚合和分析.它跟MapReduce一样是一种通用计算,但我们期望延迟在毫秒或者秒级别.这类系统一般采用有向无环图(DAG). DAG是任务链的图形化表示,我们用它来描述流处理作业的拓扑.如下图,数据从sources流经处理任务链到sinks.单机可以运行DAG,但本篇文章主要聚焦在多台机器上运行DAG的情况. 关注点 当选择不同的流处理系统时,有以下几点需要注意的: 运行时和编程模型:平台框架提供的编程模型决定了许多特色功能,编程模型要足够处理各种

Dream------Hadoop--网络拓扑与Hadoop--摘抄

两个节点在一个本地网络中被称为“彼此的近邻”是什么意思?在高容量数据处理中,限制因素是我们在节点间 传送数据的速率-----带宽很稀缺.这个想法便是将两个节点间的带宽作为距离的衡量标准.   衡量节点间的带宽,实际上很难实现(它需要一个稳定的集群,并且在集群中成对的节点的数量的增长要是节点数量的平方),不及Hadoop采用一个简单的方法,把网络看做一棵树,两个节点间的距离是距离他们最近的共同祖先的总和. 该树中的等级是没有被预先设定的,但是他对于相当于数据中心.框架和一直在运行的节点的等级是相同