问题标签 [vis.js-network]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
41 浏览

javascript - 具有相同父节点的节点不尊重顺序

我有一个使用vis.js. 在服务器端,我构建了一个 js,它将在节点选择事件上插入新节点。

这是有问题的布局 在此处输入图像描述

这是预期的布局 在此处输入图像描述

正如您在此要点中所见,生成错误布局树的脚本与正确布局相同,只是多了一个节点。

我究竟做错了什么?我怎样才能解决这个问题?

PS:这不是“机会问题”,如果给定根元素发生这种情况,它总是会发生

0 投票
1 回答
667 浏览

vis.js - 是否可以向边缘添加自定义属性?

我试图在网络边缘添加额外的信息,但似乎我做不到。

我尝试以多种方式做到这一点,但是虽然一切都适用于节点,但它不适用于边缘。

最简单的例子是:

运行此代码后,我找不到customProperty任何地方,但如果我为节点运行相同的代码,我会在options属性下找到它。

你能帮我解决这个问题吗?(我试图找到一个问题并阅读边缘上的文档,但没有发现任何相关内容,还没有检查库代码,我想我会先问)

更新

事实证明,使用我发布的确切代码(在完全干净的设置上对其进行测试)可以做到这一点,但是我们的项目中还有另一件事会影响网络边缘。

更清楚地说:如果边缘是通过 访问的network.body.edges,那么它们将只包含边缘特定的选项,如果边缘是通过数据集访问的 - 它可以包含所有属性(包括自定义属性)

0 投票
1 回答
761 浏览

javascript - 如何更改节点 VisJs 之间的边缘连接点

我正在尝试在 VisJs 中编写可视化管道。所以我有一个图表和一些节点。节点可以生成/使用几种不同的数据类型。所以我需要这样的东西

所以一个节点有超过 1 个锚点,这些锚点只连接到它自己的类型。我可以将绘制边缘的位置更改为它们在节点中的连接位置吗?有谁知道更好的 JS 库来做到这一点,或者这可以用 VisJs 来完成吗?

0 投票
3 回答
4195 浏览

javascript - Vis.js 节点工具提示在使用 ReactJS 悬停时不显示

问候,

在我的项目中,我使用 ReactJS 显示 vis.js 图,并且我希望显示的网络的节点通过显示弹出/工具提示来对鼠标悬停事件做出反应。每个节点都有一个标题属性,这就是工具提示应该显示的内容。

这就是他们在示例中的做法:

弹出窗口在这里起作用。

我正在从数据库中加载与节点相关的数据,并且根据该数据绘制节点就好了。一切正常,除了在悬停事件触发时弹出窗口不显示。这是component.tsx文件的相关部分:

并且数据从数据库中很好地到达。节点的标题属性在那里,我能够在查询运行后登录到控制台。当触发悬停事件时,该标题属性是 vis.js 画布应显示/绘制为弹出窗口的内容。我加载的相关选项 this.state.options是:

然而,弹出消息永远不会出现。我试图检查弹出事件是否真的发生了,而且似乎确实发生了,因为showPopupvis.js 的事件(在显示弹出窗口时发生)确实被触发了,我放入其中的 console.log 运行,但是弹出窗口仍然没有真正出现在屏幕上。

理论上,在 ReactJS 中,我使用NodeGraph足够的数据来绘制图形,它应该与这条线基本相同:

但显然,弹出窗口的某些内容在 ReactJS 版本中丢失了,除非原因是我做错了什么。

有谁知道任何解决方案可以帮助我在 ReactJS 中显示带有悬停事件的 vis.js 图的标题工具提示?任何帮助深表感谢。

谢谢,

巴林特

0 投票
1 回答
2671 浏览

javascript - 如何在 VIsJS 网络中按箭头方向更改节点位置

在谷歌上搜索了很多时间后,我决定visjs将适合我的解决方案来开发网络图。我能够通过 Hierarchical Layout Horizo​​ntal 使用 Dataset 生成网络图。我在网络中有一个小问题,即我只想要一个(前向)方向的所有边缘。在三角形左侧的网络截图中,我需要BCF节点:

在此处输入图像描述

我尝试改变不同options但无法实现它。

有没有人用这个库来做网络图,请帮帮我。

提前致谢。

参考文档中的示例

这是代码示例。

0 投票
0 回答
335 浏览

vis.js-network - 网络 - 单击时禁用编辑模式

双击边或节点时,我进入编辑或添加模式,然后我可以进行修改。这工作正常:

当用户点击其他地方时,我想退出模式,因为我尝试结合使用 click 事件,disableEditMode()但这似乎不起作用:

这真的可能吗?这disableEditMode()是制作的目的吗?

0 投票
2 回答
7979 浏览

javascript - Vis.js 网络:如何在画布内单击时添加节点?

vis.js 的操作addNodeMode()方法只有addNode(). 我想知道是否有一些很好的方法可以在点击时创建一个节点。可能是通过操纵数据而不是网络本身?

当然,一个人可以去

但是我们还必须防止无限循环,因为我们在点击处理程序中生成了一个点击事件..

0 投票
1 回答
1685 浏览

php - 如何使用 `vis.js` 显示 JSON 数据

我想显示来自 MySQL 的数据vis.js。我使用 JSON 获取数据,但出现此错误:

错误:节点必须有一个 id

我的服务器 sid 像这样

0 投票
2 回答
1067 浏览

vis.js - 将可见网络图配置为仅缩放而不是鼠标滚动

我有一个由 vis.js 创建的大型网络图,它在浏览器中是 100% 宽并且非常高,因此需要向下滚动页面才能看到所有内容 - 我希望我的页面能够像世界上大多数其他网页一样运行 - 但是vis.js 在我滚动时缩放,而不是滚动页面。如何关闭滚动的缩放但仍然允许它说,捏(或按住键+滚动)?

当然,我可以使用此选项关闭缩放 - 并添加一些内置缩放按钮:

但这并不理想。它要求用户滚动到页面底部才能访问缩放控件。另外,我想要一个更易于使用的缩放功能(是的,我知道,我刚刚关闭了更易于使用的缩放功能)。Vis时间线图似乎比网络图有更多的缩放方法。

总结一下:我希望为图表禁用鼠标滚轮/触控板滚动,从而提供自然的整个页面滚动行为,再加上捏合(或按住键+滚动)进行缩放。

0 投票
1 回答
481 浏览

javascript - Vis.js:减少多个中心节点的布局噪音(径向力)

我正在使用 vis.js 来显示一些图表。问题是具有多个中心节点的布局会变得嘈杂(中心节点的邻居重叠)。类似于所附图像的布局是可取的。是否可以使用 vis.js 来实现这一点?

在此处输入图像描述