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

2023-12-19

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

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

请帮忙 !


Cytoscape.js 有波普尔.js https://github.com/cytoscape/cytoscape.js-popper与蒂皮。我可以给你一个 popper.js 的工作示例:

波普与小费:

document.addEventListener("DOMContentLoaded", function() {
  var cy = (window.cy = cytoscape({
    container: document.getElementById("cy"),
    style: [{
        selector: "node",
        style: {
          content: "data(id)"
        }
      },
      {
        selector: "edge",
        style: {
          "curve-style": "bezier",
          "target-arrow-shape": "triangle"
        }
      }
    ],
    elements: {
      nodes: [{
        data: {
          id: "a"
        }
      }, {
        data: {
          id: "b"
        }
      }],
      edges: [{
        data: {
          id: "ab",
          source: "a",
          target: "b"
        }
      }]
    },
    layout: {
      name: "grid"
    }
  }));

  function makePopper(ele) {
    let ref = ele.popperRef(); // used only for positioning

    ele.tippy = tippy(ref, { // tippy options:
      content: () => {
        let content = document.createElement('div');

        content.innerHTML = ele.id();

        return content;
      },
      trigger: 'manual' // probably want manual mode
    });
  }

  cy.ready(function() {
    cy.elements().forEach(function(ele) {
      makePopper(ele);
    });
  });

  cy.elements().unbind('mouseover');
  cy.elements().bind('mouseover', (event) => event.target.tippy.show());

  cy.elements().unbind('mouseout');
  cy.elements().bind('mouseout', (event) => event.target.tippy.hide());

});
body {
  font-family: helvetica neue, helvetica, liberation sans, arial, sans-serif;
  font-size: 14px
}

#cy {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
}

h1 {
  opacity: 0.5;
  font-size: 1em;
  font-weight: bold;
}
<head>
  <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1">
  <script src="https://unpkg.com/cytoscape/dist/cytoscape.min.js"></script>
  <script src="https://unpkg.com/[email protected] /cdn-cgi/l/email-protection/dist/umd/popper.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/[email protected] /cdn-cgi/l/email-protection/cytoscape-popper.min.js"></script>
  <script src="https://unpkg.com/[email protected] /cdn-cgi/l/email-protection/umd/index.all.min.js"></script>
  <link rel="stylesheet" href="https://unpkg.com/[email protected] /cdn-cgi/l/email-protection/index.css" />
</head>

<body>
  <div id="cy"></div>
</body>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • 细胞景观。从 URL 加载依赖项

    这是一个非常简单的问题 如何通过 url 将 cytoscape 指示为来源 我知道与D3这很简单 cytoscape 的等效地址是什么 Thanks 您要查找的术语是 CDN 托管的代码副本 严格来说 即使您指定了本地副本 您仍然在使用
  • 如何在 cytoscapejs 中操作后保存图形的整个状态

    我在 Angular 中使用 cytoscapejs 我希望用户在完成一些操作 例如平移 缩放 移动节点和边缘 后保存图形的状态 我尝试将整个对象保存在临时变量中 并尝试通过单击按钮使用保存的对象重新加载图形来渲染图形 const cy c
  • cytoscape.js 中复合节点内的子节点定位

    使用 cytoscape js 使用复合节点绘制图形 需要将内部节点 即子节点 定位到复合节点的特定位置 例如左 右 上 下等 有什么办法可以做到这一点吗 计划在 2 4 中提供此功能 https github com cytoscape
  • 细胞景观中折叠/扩张的复合节点

    cytoscape js 是否支持折叠 展开复合节点 Eg before collapsing node1 node1 1 node1 2 node1 2 1 崩溃后 node1 用于展开 折叠的 或 符号会很棒 寻找使用复合节点对一组节点
  • 在 cytoscape 中鼠标悬停时显示和隐藏节点信息

    我正在浏览器中处理 cytoscape js 图表 我想当鼠标悬停在细胞景观图中的节点上时显示节点的一些信息 例如节点标签 以下代码适用于console log 但我想在浏览器中显示信息 cy on mouseover node funct
  • 如何锁定 cytoscape.js 节点在其父节点内的位置

    我想锁定节点相对于其父复合节点的位置 这样 如果我抓取并拖动父节点 子节点会随之移动 但子节点不能单独抓取 如果我将子项设置为不可抓取和 或锁定 那么它不会与其父项一起移动 但如果我不这样做 它可以被单独拖动 这是我不想要的 这可以做到吗
  • 使用 Cytoscape.js 进行节点聚类

    有谁知道是否可以按照 vis js 通过 cytoscape js 支持的方式进行聚类 这里有些例子 https visjs github io vis network examples network other clusteringBy
  • 增加浏览器中的堆栈大小

    简短的问题 我有一个在递归方面非常深入的JavaScript 如何增加堆栈大小以便可以执行它 类似于 Unix 系统中的 ulimit s unlimited 长话短说 我必须画一张图 我使用 Cytoscape JS http js cy
  • 仅增加选定边缘的宽度 (cytoscape.js)

    当我选择几个相连的节点或简单的边时 如何预定义使所选边的宽度变大 而不影响整个网络的其余边或节点的宽度 我在选择节点或边时预定义了这一点 cy cytoscape style cytoscape stylesheet selector se
  • Cytoscape.js - 将核心背景设置为深色?

    我正在尝试将边缘渲染为白色 因此希望在 cytoscape js 视口中使用黑色背景 我尝试修改 div 上的 cssid cy 但这似乎被覆盖了 在文档中 我只能找到在导出到图像时设置背景颜色的功能 例如cy jpg 但这不是我想要的 我
  • 在节点点击上隐藏和显示子节点 Cytoscape

    我正在尝试使用宽度优先布局在 Cytoscape 中创建可折叠的树结构 以复制D3可折叠树 https bl ocks org mbostock 4339083 我正在尝试在节点上复制这种类型的单击操作 但另外添加恢复功能 图像和宽度优先布
  • Cytsocape.js 无法使用不存在的目标创建边缘

    在使用 AJAX 请求创建节点后 我尝试创建边缘 My code success function data each data kids function i value cy add group nodes data id value
  • 如何在通过回调添加和删除节点时固定 Dash Cytoscape 中节点的位置?

    我想使用以下示例数据源制作一个带有交互式网络图的 Web 应用程序 data Source Node a a b b c Destination Node b c c d d Link likes likes likes likes dis
  • cytoscape:改变第二轴出租车分支的长度

    I want to create a tree with different branch lengths looking like this Is there a possibility of assigning a length to
  • 如何在 Typescript 中使用 Cytoscape.js 的 UI 扩展?

    是否可以在 Typescript 中使用 Cytoscape UI 扩展 可以使用布局扩展 但是当我需要时https github com cytoscape cytoscape js cxtmenu https github com cy
  • 通过与 cytoscape.js 中特定节点的连接来过滤图表

    Cytoscape 的新手 我有一张图 其中包含主导主网络和一些与我要删除的主网络未连接的较小网络 浏览文档我看不到明显的解决方案 我猜测可能需要一种自定义方法来循环所有节点 检查它们与主集群中最中心节点的图形距离 如果该距离未定义 则删除
  • 在鼠标光标位置添加 cytoscape 节点

    我想在画布上的单击事件上的鼠标箭头位置添加一个 cytoscape 节点 我怎样才能做到这一点 我的方法 效果不太好 我可以通过单击创建一个节点 但无法确保创建的节点的位置位于我单击的位置 使用这样的东西 cy click function
  • cytoscape.js 平移时如何去除灰色圆圈

    我使用 cytoscape js 绘制节点图如果我用鼠标平移图表 我的鼠标位置上会有一个灰色圆圈 我不知道如何删除它 你能帮我吗 谢谢 仅覆盖 Core 样式以删除灰色圆圈 selector core just core propertie
  • Cytoscape 布局 - 处理锁定节点

    我正在使用 vue cytoscape 渲染图形并浏览树状数据结构 我的目标是扩展父节点并保持它们在图中的位置 我想简单地添加新的子节点 我的方法是锁定当前节点 添加子节点并解锁节点 this cy nodes lock for let d
  • 在 Cytoscape.js 中为家谱设置边缘样式

    我有一个使用 Django 的家谱应用程序 我正在尝试使用http js cytoscape org http js cytoscape org对于用户界面 我想设置之间的边缘样式浪漫的伴侣像这样 http www eprintableca

随机推荐

  • 一个函数可以检测 NaN、NA、Inf、-Inf 等?

    R 中是否有一个函数可以确定某个值是否为NA NaN Inf Inf 或者不是一个格式良好的数字 你要is finite gt is finite NA 1 FALSE gt is finite NaN 1 FALSE gt is fini
  • {@inheritDoc} 不继承 Eclipse 中的超类 javadoc

    当我使用 inheritDoc 在 Eclipse 中 超类的 javadoc 注释没有出现在我的类的 javadoc 中 我有以下代码 import javax swing table AbstractTableModel public
  • 如何使用 MVC 4 显示数据库中的二进制图像以编辑表单

    我成功地将图像作为二进制图像存储在数据库中 我想在编辑表单中显示这些图像以修改并保存更改 显示数据库中的二进制图像时 以 Edit cshtml 形式抛出 System OutOfMemoryException 有人可以纠正我的代码吗 型号
  • Google App Engine 防火墙和内部访问

    我有两项服务在 Google App Engine flex 同一项目 上运行 我希望一项服务使用 HTTPS 调用另一项服务 最重要的是 我设置了防火墙 只允许0 1 0 40 and 10 0 0 1 我也在设置X Appengine
  • mclapply 与 for 循环绘图:速度和可扩展性焦点

    我正在 R 中运行一个函数 该函数可能需要很长时间才能运行 因为它在将某些数据推入之前执行多个命令来转换和子集一些数据ggplot来策划 我需要多次运行此函数来调整参数值 我将提供的示例是一个简单的示例 但想知道如何加快速度 如果扩大规模
  • C++/CLI .NET 可以使用资源 .resx 文件进行本地化吗?

    我正在尝试将托管 C NET DLL 本地化为多种语言 这些表单非常简单 因为它们的操作就像其他语言一样并创建多个 resx 文件 除了以传统 C 方式使用 RC 字符串表之外 我找不到任何在托管 C 中本地化嵌入字符串的示例 有没有什么方
  • 我可以为任何没有 UDID 的设备分发我的应用程序吗?

    我一直在搜索 stackoverflow 阅读各种博客来获取我的问题的答案 我可以将我的应用程序分发给某人 而不获取他的设备 UDID 吗 我找到的答案都是 不 你必须有 UDID 列表 但是 有人 私营公司 告诉我 他们过去常常在不向开发
  • 64 位模运算的奇怪性能行为

    这些方法调用中的最后三个大约需要花费大约时间 比前四个时间多了一倍 唯一的区别是它们的参数不再适合整数 但这有关系吗 该参数被声明为long 因此无论如何都应该使用long进行计算 模运算是否使用另一种数字 gt maxint 算法 我使用
  • 有没有办法让 Activity 知道刚刚创建了什么片段?

    An Activity可能会膨胀任意布局 xml 该布局可能有也可能没有Fragment其中的占位符 如果是的话 Fragment将被实例化并附加到Activity 有什么办法可以参考一下Fragment来自Activity那已经附加了吗
  • JSF 2 默认日期时间转换器模式

    我的 JSF 页面以以下格式显示托管 bean 的日期时间 MM dd yyyy h mm a 我想避免在不同页面中重复声明转换器
  • protobuf-net 是否支持 C# 9 位置记录类型?

    我正在尝试将 protobuf net 与 C 位置记录类型一起使用 并且遇到了此异常 10 18 48 048 EROR 010 Microsoft AspNetCore Server Kestrel Connection id 0HM4
  • 无法在 itunes connect 中更改捆绑包 ID?

    我的第一个应用程序被拒绝 因为它的捆绑包 ID 中有 Youtube 一词 从那时起 我更改了 plist info 中的包 ID 和 Xcode 中的包标识符 我还在 Apple 开发者网站的会员中心的标识符部分下创建了一个新的应用程序
  • 以下划线开头的名称显示错误 gh-pages 分支的页面不存在

    我对 github 的 gh pages 有疑问 以 下划线 开头的 html 页面显示错误 Page does not exist Read the Full Documentation Instructions for setting
  • 构建大型 KML 文件

    我生成的 KML 文件可能有 50 000 个或更多地标 根据特定于域的分组排列在文件夹中 KML 文件使用打包到 KMZ 文件中的自定义图像 我希望将单个 KML 文件分解为多个文件 并根据分组进行分区 因此我不会拥有 1 个带有文件夹的
  • 使用匿名结构与使用 typedef 的命名结构

    什么时候应该使用以下语句之一而不是另一个 typedef struct Foo int a Bar and typedef struct int a Bar 并像这样使用它 Bar bar1 5 我知道第二个是一个匿名结构 但不确定何时应该
  • 为什么进程的“私有字节”内存计数器永远不会返回到其原始值?

    如果我有一个本机 C 程序并查看它的初始 私有字节 内存计数器 为什么在创建并删除对象后它不会返回到其原始值 例如 如果我有一个有两个按钮的应用程序 32位 Native C MFC 其中一个在循环中分配一个对象的 1 000 000 个实
  • Tkinter:如何创建选择框

    I need to create a choice box where i can click on arrow and it give me list of choices And if i click on one of them it
  • 如何在android中创建水平轮播视图? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在我的 Android 应用程序中 我想实现 7 个视图的轮播 我的轮播必须显示为如图中的第一张图片link http www shi
  • 更改默认场景网格颜色

    是否可以更改默认场景网格颜色 我使用的是Unity 2017 1 1 Personal 当我没有directional light组件 它有这种丑陋的棕色 这可以做到吗 您可以通过以下方式更改网格线颜色Edit gt 优先 gt Color
  • 在 cytoscape 中鼠标悬停时显示和隐藏节点信息

    我正在浏览器中处理 cytoscape js 图表 我想当鼠标悬停在细胞景观图中的节点上时显示节点的一些信息 例如节点标签 以下代码适用于console log 但我想在浏览器中显示信息 cy on mouseover node funct