Javascript 导入Cytoscape Desktop 3.1 BETA将JSON文件(.cyjs)导出到Cytoscape.js
我使用内置的导出器将Cytoscape 3.1 BETA 3中的蛋白质蛋白质网络导出到JSON(cyjs)文件。我尝试使用Cytoscape.js库将此cyjs文件导入到web应用程序,但失败 我昨天在这里读了gcpdev提出的问题(),但这对我没有帮助 导入的JavaScript库:jQuery-1.11、Cytoscape.js、Arbor、Arbor tween。 我的代码是:Javascript 导入Cytoscape Desktop 3.1 BETA将JSON文件(.cyjs)导出到Cytoscape.js,javascript,jquery,json,cytoscape.js,cytoscape,Javascript,Jquery,Json,Cytoscape.js,Cytoscape,我使用内置的导出器将Cytoscape 3.1 BETA 3中的蛋白质蛋白质网络导出到JSON(cyjs)文件。我尝试使用Cytoscape.js库将此cyjs文件导入到web应用程序,但失败 我昨天在这里读了gcpdev提出的问题(),但这对我没有帮助 导入的JavaScript库:jQuery-1.11、Cytoscape.js、Arbor、Arbor tween。 我的代码是: <script type="text/javascript"> $('#cy').cytoscap
<script type="text/javascript">
$('#cy').cytoscape({
layout: {
name: 'arbor',
liveUpdate: true,
},
ready: function(){
window.cy = this;
var jsonfile = "src/inside_sc.cyjs";
$(document).ready(function() {
$.getJSON(jsonfile, function(json) {
cy.add( JSON.parse( json ) );
});
});
}
});
</script>
其中index.html是我的文件,第38行是:
cy.add( JSON.parse( json ) );
我收到了与更改相同的错误消息。如果我添加了一些样式和基本节点和边,或者使用$.parseJSON()
函数,都不起作用
我试图将这一行更改为cy.add(json)代码>结果与上述问题相同:
An element must be of type `nodes` or `edges`; you specified `undefined`
Uncaught TypeError: Cannot read property 'single' of undefined
当我试图向控制台显示JSON信息时,比如console.log(JSON)代码>它工作正常
我的剧本怎么了?我该怎么办?据我所知,从Cytoscape桌面导出的JS并不能替代cy.add()
或init选项。您需要检查Cytoscape desktop生成的文件,并在init选项(options.elements
)中指定JSON中元素的路径。对不起,我是应用程序开发的初学者,不太懂。那么,我应该编写什么代码来将简单的CyDesktop导出转换为真正的CyJS网络呢?如何实现新元素到元素对象?您需要使用选项:{elements:json.path.to.elements}
或类似选项,其中path.to.elements
是从Cytoscape导出的JSON中指向元素的路径。@maxkfranz我有一个变量newdata
,其中包含一个字符串,指定元素
。在$('#cy').cytoscape({
我可以做元素:newdata
?
An element must be of type `nodes` or `edges`; you specified `undefined`
Uncaught TypeError: Cannot read property 'single' of undefined