Cytoscape绘图初探

来源:互联网 发布:ip是设备还是网络连接 编辑:程序博客网 时间:2024/06/05 20:56

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数据格式中。这样就完成了传值,之后设置边就可以依据自己的需求来设置了。

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


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

1 0
原创粉丝点击