如何在angularjs中使用visjs创建网络图或层次树? [英] How to create network graph or hierarchical tree using visjs in angularjs?

查看:22
本文介绍了如何在angularjs中使用visjs创建网络图或层次树?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要一些帮助来使用 angularjs 中的 visjs 创建网络图.我正在研究 this plunker 以实现类似 这个

I need some help in creating a network graph using visjs in angularjs. I am working on this plunker to achieve something like this

我按照 AngularJS - visjs 中提到的步骤操作,但无法使其正常工作,所以我创建了一个 plunker(如上所示)以从社区获得帮助.

I followed the steps mentioned in AngularJS - visjs but was unable to make it work so I created a plunker (given above) to get help from community.

控制器代码.

var app = angular.module('app', ['ngVis']);

app.controller('MainCtrl', ['$scope', 'VisDataSet',

  function($scope, VisDataSet) {
      $scope.data = VisDataSet({
          "1": {
              "id": 1,
              "content": "<i class=\"fi-flag\"></i> item 1",
              "start": "2014-09-01T17:59:13.706Z",
              "className": "magenta",
              "type": "box"
          },
          "2": {
              "id": 2,
              "content": "<a href=\"http://visjs.org\" target=\"_blank\">visjs.org</a>",
              "start": "2014-09-02T17:59:13.706Z",
              "type": "box"
          },
          "3": {
              "id": 3,
              "content": "item 3",
              "start": "2014-08-29T17:59:13.706Z",
              "type": "box"
          },
          "4": {
              "id": 4,
              "content": "item 4",
              "start": "2014-09-01T17:59:13.706Z",
              "end": "2014-09-03T17:59:13.706Z",
              "type": "range"
          },
          "5": {
              "id": 5,
              "content": "item 5",
              "start": "2014-08-30T17:59:13.706Z",
              "type": "point"
          },
          "6": {
              "id": 6,
              "content": "item 6",
              "start": "2014-09-04T17:59:13.706Z",
              "type": "point"
          },
          "7": {
              "id": 7,
              "content": "<i class=\"fi-anchor\"></i> item 7",
              "start": "2014-08-28T17:59:13.706Z",
              "end": "2014-08-29T17:59:13.706Z",
              "type": "range",
              "className": "orange"
          }
      });
      $scope.options = {
          "align": "center",
          "autoResize": true,
          "editable": true,
          "selectable": true,
          "orientation": "bottom",
          "showCurrentTime": true,
          "showCustomTime": true,
          "showMajorLabels": true,
          "showMinorLabels": true
      };
  }
]);

请帮助我找出这个 plunker

推荐答案

我看到了一些问题.首先,您将 css 文件作为脚本而不是样式表包含在内.所以使用这个:

I saw a few issues. First, you were including your css files as scripts instead of as stylesheets. So use this:

<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.3.0/vis.css">
<link rel="stylesheet" type="text/css" href="style.css">

其次,如果您查看 angular-vis.js,您会发现该指令实际上应该是 vis-timeline.所以我只是在html中将其更改为:

Second if you take a look at angular-vis.js, you'll see that the directive should actually be vis-timeline. So I just changed it to this in the html:

<vis-timeline data="data" options="options"></vis-timeline>

我删除了 events 属性,因为它没有在您的范围内定义,但我假设您可以查看 visjs 文档以了解应该在那里添加什么.

I removed the events attribute because that wasn't defined on your scope, but I assume you can look at the visjs documentation to see what should go there.

请参阅修订后的 plunker 了解整个修复.

See the revised plunker for the whole fix.

这篇关于如何在angularjs中使用visjs创建网络图或层次树?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆