小编Ste*_* T.的帖子

在 cytoscape 中显示和隐藏鼠标悬停时的节点信息

我正在浏览器中处理 cytoscape.js 图。当鼠标悬停在细胞景观图中的节点上时,我想显示节点的一些信息(例如节点标签)。以下代码适用,console.log()但我想在浏览器中显示信息:

cy.on('mouseover', 'node', function(evt){
    var node = evt.target;
    console.log( 'mouse on node' + node.data('label') );
});
Run Code Online (Sandbox Code Playgroud)

请帮忙 !

cytoscape.js

6
推荐指数
1
解决办法
3856
查看次数

为什么我的 cytoscape 图缺少箭头(尽管我放入了箭头)?

以下 cytoscape.js 图表显示其边缘没有箭头。我确实有一个指定三角形箭头的边缘选择器,但它没有显示。

var cy = cytoscape({
  container: document.getElementById('cy'),
  style: [{
    selector: 'node',
    style: {
      'background-color': 'mapData(activation, -1, 1, blue, red)',
      'label': 'data(id)'
    }
  }, {
    selector: 'edge',
    style: {
      'width': 3,
      'line-color': function(ele) {
        return ele.data('relation')
      },
      'target-arrow-color': function(ele) {
        return ele.data('relation')
      },
      'target-arrow-shape': 'triangle'
    }
  }],
  // If you want to apply the layout on the constructor
  // you must supply the elements too
  layout: {
    name: 'breadthfirst'
  },
  elements: {
    nodes: [{
        group: 'nodes',
        data: {
          id: …
Run Code Online (Sandbox Code Playgroud)

javascript charts cytoscape.js

6
推荐指数
1
解决办法
1282
查看次数

为什么 Cytoscape.js 会阻止跨源图像请求,而 d3.js 不会阻止?

尽管 Cytoscape.js 支持节点中的背景图像,但我无法显示没有 CORS(跨源资源共享)标头的图像。Chrome 抛出以下错误。

Access to image at 'https://cdn2-www.dogtime.com/assets/uploads/gallery/goldendoodle-dog-breed-pictures/puppy-4_1.jpg'
from origin 'https://null.jsbin.com' has been blocked by CORS policy: 
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Run Code Online (Sandbox Code Playgroud)

这是我试图访问的图像 -

但是,如果我尝试使用 d3.js 在节点中显示与背景相同的图像,则会显示该图像。

Cytoscape.js

Access to image at 'https://cdn2-www.dogtime.com/assets/uploads/gallery/goldendoodle-dog-breed-pictures/puppy-4_1.jpg'
from origin 'https://null.jsbin.com' has been blocked by CORS policy: 
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Run Code Online (Sandbox Code Playgroud)
var cy;
window.addEventListener('DOMContentLoaded', function() {

  cy = cytoscape({
    container: document.getElementById('cy'),

    style: cytoscape.stylesheet()
      .selector('node')
      .css({
        'height': 60,
        'width': 60,
        'background-fit': 'cover',
        'border-color': '#000',
        'border-width': …
Run Code Online (Sandbox Code Playgroud)

d3.js cytoscape.js

5
推荐指数
1
解决办法
1041
查看次数

是否可以将react上下文注入react根目录之外的div(在body下面)

我正在使用 React cytoscape 库。尝试集成到 cytoscape 的 popper 插件。popper“content”属性期望返回一个 div 元素,描述附加到“body”元素的 popper。由于上下文提供者位于根元素下,因此该 div 不能成为该上下文的使用者。如何在根外部定义的 popper 元素中使用相同的上下文。

使用 cytoscape 的 React 组件,但 cytoscape 的插件是纯 js 的。

<body>
 <div id=root>
  <Style_Provider>
      .
      .
      .
  </Style_Provider>
 </div>
 <div id="popper">
    // need to access to style context
 </div>
</body>
Run Code Online (Sandbox Code Playgroud)

javascript cytoscape.js reactjs popper.js react-context

4
推荐指数
1
解决办法
2355
查看次数

如何更改 Cytoscape.js 网格中单个节点的颜色

如何将颜色更改为布局中已存在的节点或边缘(不删除/添加它)?

我有一个带有预选位置的节点布局,我想改变颜色(节点和边缘),但不是每个节点(或边缘)。我已经试过了

cy.style('background-color', 'color');
Run Code Online (Sandbox Code Playgroud)

,这允许更改颜色,但它会更改每个节点的颜色。

我只想改变一个节点的样式。

非常感谢

罗伯特

javascript cytoscape.js

3
推荐指数
1
解决办法
2814
查看次数

需要哪些 javascript 包含文件才能使布局扩展在 cytoscape 中工作?

Cytoscape Javascript 绘图软件附带了多种内置布局,但也有其他作为“扩展”创建的布局。我尝试使用“klay”布局,这是一个扩展,但我只是收到 JavaScript 错误。(我的代码可以很好地处理内置布局,例如“cose”,但无法处理扩展。以下是我使用的包含文件:

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.14.0/cytoscape.min.js"></script>
<script src="https://unpkg.com/klayjs@0.4.1/klay.js"></script>   
<script type="text/javascript" src="scripts/cytoscape-klay.js"></script>
Run Code Online (Sandbox Code Playgroud)

那么我在这里做错了什么?一旦我有了正确的“包含”文件,代码就应该可以工作,因为内置布局的布局使用应该与扩展布局相同。谢谢。

javascript charts cytoscape.js

3
推荐指数
1
解决办法
393
查看次数

cytoscape js标签显示,如何换行

我正在使用 cytoscape.js 显示有向图,并在标签中显示 2 个属性。

我想将文本换行,据说文档中可以这样做,但我无法让它工作。任何人都可以帮助解决语法问题吗?

'label': 'data(name)',
'font-size' : 14
'text-wrap': 'wrap/n'
Run Code Online (Sandbox Code Playgroud)

text-wrap似乎不起作用,它挂起图形显示。

我需要设置“text-max-width”吗?

提前致谢

label styles graph cytoscape.js

2
推荐指数
1
解决办法
2185
查看次数

Cytoscape.js:节点上的右键单击事件

我试图在节点上添加右键单击事件,但框架似乎没有捕获这些事件。仅当我左键单击时才会触发此事件:

cy.on('mousedown', (event, node) => {         
    console.log(event.originalEvent);
});
Run Code Online (Sandbox Code Playgroud)

我们可以从原始事件中过滤出我们感兴趣的按钮吗?

javascript cytoscape.js

1
推荐指数
1
解决办法
2096
查看次数