标签: vis.js-network

vis.js Level sorting in Hierarchical Layout

I have a fairly simple hierarchical structure of nodes, but when vis.js draws them, the order of nodes on each level doesn't make much sense - there are a lot of crossed edges (screenshot: Default Layout )

I am hoping to get a layout similar to that given here: Expected Layout

My vis.js options are as follows;

{
    "layout": {
        "hierarchical": {
            "direction": "LR",
            "sortMethod": "directed",
            "nodeSpacing": 200,
            "treeSpacing": 400
        }
    },
    "edges": {
        "smooth": {
            "type": "continuous"
        }
    }, …
Run Code Online (Sandbox Code Playgroud)

javascript vis.js vis.js-network

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

在Vis.js中设置缩放级别

我有一个网络,我正在使用vis.js构建,但它在宽度方面太大,无法放入页面的容器中.网络从左到右运行,包含有关特定进程的步骤.当一个人完成任务时,服务器会提供新的JSON记录来更新颜色.

由于布局,我无法更改容器大小.当网络加载时,它会导致字体非常小且不可读.有没有办法可以将缩放级别设置为一个选项,以便只显示该过程中的当前步骤?

function draw() {

test = null;

// create a network
var testContainer = document.getElementById('testing');

// create some nodes
var width = testing.clientWidth;

var nodes = [
  {id: 1, x: 0, y: 1, label: 'Start', color: 'green', shape: 'circle'},
  {id: 2, label: 'Step 2', shape: 'square'},
  {id: 3, label: 'Step 3', shape: 'square'},
  {id: 4, label: 'Step 4', shape: 'square'},
  {id: 5, label: 'Step 5', shape: 'square'},
  {id: 6, label: 'Step 6', shape: 'square'},
  {id: 7, label: 'Step 7', …
Run Code Online (Sandbox Code Playgroud)

javascript visualization chap-links-library vis.js vis.js-network

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

vis.js最小化交叉边缘

我是JavaScript的新手,并使用vis.js来构建分层("UD")网络.我有一个问题:同一级别的许多边缘交叉.

在vis.js中是否有一种方法可以最小化交叉边缘?在我的例子中,我有一个简单的树,根本不应该有交叉的边.

即我想要的东西 在此输入图像描述 代替 在此输入图像描述

我的问题与Hierarchical Layout中的vis.js级别排序有关

这是我的vis.js选项:

var options = {
    edges: {
        smooth: {
            type: 'cubicBezier',
            roundness: 0.4
        }
    },
    layout: {
		improvedLayout: true,
        hierarchical: {
            direction: "UD"
        }
    },
    physics:false
};
Run Code Online (Sandbox Code Playgroud)

javascript vis.js vis.js-network

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

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

你好,

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

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

<!doctype html>
<html>
<head>
    <title>Network | Interaction events</title>
    <script type="text/javascript" src="../../../dist/vis.js"></script>
    <link href="../../../dist/vis-network.min.css" rel="stylesheet" type="text/css" />
    <style type="text/css">
        #mynetwork {
            width: 600px;
            height: 400px;
            border: 1px solid lightgray;
        }
    </style>
</head>
<body>
    <div id="mynetwork"></div>
    <script type="text/javascript">
        // create an array with nodes
        var nodes = new vis.DataSet([
            { id: 1, label: 'Node 1', title: 'I have a popup!' },
            { id: 2, label: 'Node 2', title: 'I have a popup!' },
            { id: …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs vis.js vis.js-network

6
推荐指数
2
解决办法
3655
查看次数

Vis.js网络:如何在画布上单击添加节点?

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

当然,可能会去

network.on('click',function(params){
    if((params.nodes.length == 0) && (params.edges.length == 0)) {
        network.addNodeMode(); // doesn't add, one more click needed
        //# generate click in the same place. Use params.pointer.canvas
        //  or params.pointer.DOM to set appropriate coordinates
    }
})
Run Code Online (Sandbox Code Playgroud)

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

javascript vis.js vis.js-network

6
推荐指数
2
解决办法
3459
查看次数

在ReactJS中的VisJS网络图的画布上添加多个节点框选择器

例子

这是一个jQuery示例,用于在网络上绘制画布以选择多个节点:

怎么能把它翻译成React?

砂箱

我在这个沙箱中设置react-graph-vis(源代码),并在图表中添加了一个参考:https: //codesandbox.io/s/5m2vv1yo04

尝试

  • 使用''上的React.createRef()将eventLisnters添加到Graph/canvas时遇到问题
  • 在画布上使用此方法时遇到问题: .getContext("2d")
  • 我觉得我不明白如何访问这里提到react-graph-vis方法

结束目标

  • 左键单击+鼠标拖动绘制框选择器
  • mouseup,选择画布上绘制的框中的节点,并清除绘图

也许我正朝着错误的方向前进.

javascript canvas reactjs vis.js vis.js-network

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

在vis-network中,层次布局中的水平顺序是如何确定的?

本例中"level"用于控制节点放置的垂直位置(假设hierarchical.directionup-down)。

在此处输入图片说明

但是,我没有找到如何为同一层次结构上的节点设置水平顺序。例如,如果我想放在node 6前面node 1,有没有办法做到这一点?

我的理解是水平顺序纯粹是由节点插入顺序决定的,对吗?

vis.js vis.js-network

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

如何在 Vis.js 网络图的节点中增加标签填充?

使用Vis.js创建网络图时,网络中的节点用标签绘制 - 对于我的用例 - 没有足够的“填充”,即节点标签文本和边界之间没有足够的空间节点。下图说明了它:

在此处输入图片说明

考虑到 Vis.js 中已有的大量配置选项,我认为增加标签填充会很简单,但对于我的生活,无法弄清楚如何去做。浏览了官方文档,并通过 StackOverflow 和 Google 搜索,但没有找到任何提示。感觉我错过了一些明显的东西 - 任何人都可以照亮吗?...

javascript css vis.js vis.js-network

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

VISJS:将操作数据保存到json

我正在使用 vis.js 在网页上创建网络图。

我的需要是以 JSON 格式将操作图存储到数据库中,从网络图中导出 json。

我没有找到任何有关它的文档,是否可以导出 vis.js 网络并存储经过操作的数据(以 JSON 或可转换为 JSON 的形式)?

javascript vis.js vis.js-network

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

自定义带有图像和文本的 VisJS 方形标签

我正在测试 VisJS 的网络图,我正在尝试找到一种将图像放入形状方形节点中的方法。我知道形状可以指定为,image但这只会使节点成为图像。

示例:此示例仅使用带有文本的常规节点形状,并希望在形状内添加图像。http://visjs.org/examples/network/nodeStyles/widthHeight.html

我的示例:我希望John Smith猫图像和标签位于方形节点中。 http://plnkr.co/edit/nKqOWWSu1yWxx3bPdHUw?p=preview

想知道是否可以将textimage放在方形节点内?

javascript vis.js vis.js-network

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