Cytoscape绘图初探

Cytoscape是一个做网络图的js插件,用起来很方便,而且很强大。这是它的网站:点击打开链接

使用它需要导入两个文件,一个是js文件,一个是css文件。官网上下载。

这里实现了一个功能,即从后台数据库中检索数据,然后返回到前端,生成网络图。

后台action就不写了,总之返回到前端的是一个struts2的<s:iterator value="userlist" >,首先用div显示出来:

<div id="hidden">
<s:iterator value="userlist" >
	 <div align="left" id="a"><s:property value="phe" /></div>
	 <div align="left" id="b"><s:property value="phecui" /></div>
	 <div align="left" id="e"><s:property value="icd" /></div>
	 <div align="left" id="f"><s:property value="mesh" /></div>
	 <div align="left" id="g"><s:property value="hpo" /></div>
	 <div align="left" id="h"><s:property value="symp" /></div>
	 <div align="left" id="i"><s:property value="omim" /></div>
	 <div align="left" id="j"><s:property value="snomed" /></div>
	 <div align="left" id="k"><s:property value="asdpto" /></div>
	 <div align="left" id="l"><s:property value="ovae" /></div>
	 <div align="left" id="m"><s:property value="mp" /></div>
	 <div align="left" id="n"><s:property value="pato" /></div>
	 <div align="left" id="o"><s:property value="bho" /></div>
	 <div align="left" id="p"><s:property value="ctx" /></div>
	 <div align="left" id="q"><s:property value="repo" /></div>
	 <div align="left" id="r"><s:property value="rpo" /></div>
</s:iterator>
</div>

将这部分的css设置一下,隐藏这部分div:

#hidden {
    display:none;
}

然后在js中利用document.getElementById.innerHTML来获取到每个div的值,最后传到Cytoscape的json数据格式中。这样就完成了传值,之后设置边就可以依据自己的需求来设置了。

另网络图样式可以根据官网的文档来修改,我做了个简单的图,不十分好看:

这些点的数据都是按照上述方法从数据库传到前台的。

时间: 2024-10-10 16:29:04

Cytoscape绘图初探的相关文章

Cytoscape画图初探

Cytoscape是一个做网络图的js插件.用起来非常方便,并且非常强大.这是它的站点:点击打开链接 使用它须要导入两个文件,一个是js文件,一个是css文件.官网上下载. 这里实现了一个功能.即从后台数据库中检索数据,然后返回到前端,生成网络图. 后台action就不写了,总之返回到前端的是一个struts2的<s:iterator value="userlist" >.首先用div显示出来: <div id="hidden"> <s

C#或ASP.NET绘图初探

C#或ASP.NET的简单绘图 1 public void ProcessRequest (HttpContext context) { 2 context.Response.ContentType = "img/JPEG"; 3 using(System.Drawing.Bitmap bm=new System.Drawing.Bitmap(300,100))//规定大小 4 { 5 using(System.Drawing.Graphics g=System.Drawing.Gra

转录组数据库介绍

一.nt和nr数据库 nt库和nr库大家都比较熟悉,一个核酸库,一个蛋白库,两者既可以通过NCBI进行在线BLAST,也可以在ftp://ftp.ncbi.nih.gov/blast/db地址中将如下文件下载后,进行 本地BLAST.在此还是简单说明一下在线比对方法: 打开https://blast.ncbi.nlm.nih.gov/Blast.cgi,根据下表选择合适的程序(图表来自网络) 然后可以直接进行序列与nt和nr库的比对,如果还有疑问,可以查看帮助文档: ftp://ftp.ncbi

Android中Canvas绘图基础详解(附源码下载)

Android中,如果我们想绘制复杂的自定义View或游戏,我们就需要熟悉绘图API.Android通过Canvas类暴露了很多drawXXX方法,我们可以通过这些方法绘制各种各样的图形.Canvas绘图有三个基本要素:Canvas.绘图坐标系以及Paint.Canvas是画布,我们通过Canvas的各种drawXXX方法将图形绘制到Canvas上面,在drawXXX方法中我们需要传入要绘制的图形的坐标形状,还要传入一个画笔Paint.drawXXX方法以及传入其中的坐标决定了要绘制的图形的形状

Android动态绘图实现

一直想实现一个动态绘图的功能,就是那种给定几张图片之后一张张的顺序画出来.说不明白,先上效果图. 这样可以做很多东西,像百度地图的历史轨迹绘制,引导界面做类似动画效果等. 之前我考虑用SurfaceView实现这个功能,想一想,要实现这种效果,需要开启一个子线程用于控制绘制时间间隔,以达到这种渐渐绘制的效果.动手去做了,发现用SurfaceView很难实现,SurfaceView中的Canvas与View中的Canvas不同,一个不同之处是View中的Canvas是只有一张画布,然后不停的在这张

Android中Canvas绘图基础详解

原文:http://blog.csdn.net/iispring/article/details/49770651 Android中,如果我们想绘制复杂的自定义View或游戏,我们就需要熟悉绘图API.Android通过Canvas类暴露了很多drawXXX方法,我们可以通过这些方法绘制各种各样的图形.Canvas绘图有三个基本要素:Canvas.绘图坐标系以及Paint.Canvas是画布,我们通过Canvas的各种drawXXX方法将图形绘制到Canvas上面,在drawXXX方法中我们需要

C#实现无物理边距真正可打印区域的绘图\打印程序开发

经常在开发实际的应用程序中,需要用到图形绘制和打印程序.如何实现完整的精确打印和绘图是需要注意许多细节地方的.最近在遇到打印问题的时候,仔细研究一阵,总结这篇博文,写得有点杂乱,看文要还请费点神. 基本功能:窗体绘图与鼠标交互  打印预览与打印输出 开发平台:VisualStudio 2010 (C#) 1绘图坐标系统 1.1绘图系统坐标转换(屏幕窗口/打印机) 绘图程序涉及到多种坐标系统,总体上可分为三个坐标系:世界坐标系.页面坐标系以及设备坐标系.想要将图形图像会知道最终的设备上,中间需要做

[转]取代cookie的网站追踪技术:”帆布指纹识别”初探

[前言] 一般情况下,网站或者广告联盟都会非常想要一种技术方式可以在网络上精确定位到每一个个体,这样可以通过收集这些个体的数据,通过分析后更加精准的去推送广告(精准化营销)或其他有针对性的一些活动.Cookie技术是非常受欢迎的一种.当用户访问一个网站时,网站可以在用户当前的浏览器Cookie中永久植入一个含有唯一标示符(UUID)的信息,并通过这个信息将用户所有行为(浏览了哪些页面?搜索了哪些关键字?对什么感兴趣?点了哪些按钮?用了哪些功能?看了哪些商品?把哪些放入了购物车等等)关联起来. 而

进阶之初探nodeJS

一.前言 在"初探nodeJS"随笔中,我们对于node有了一个大致地了解,并在最后也通过一个示例,了解了如何快速地开启一个简单的服务器. 今儿,再次看了该篇随笔,发现该随笔理论知识稍多,适合初级入门node,固萌生一个想法--想在该篇随笔中,通过一步步编写一个稍大一点的node示例,让我们在整体上更加全面地了解node. so,该篇随笔是建立在"初探nodeJS"之上的,固取名为"进阶之初探nodeJS". 好了,侃了这多,那么我们即将实现一个