加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

图表 – 如何集成Flot与AngularJS?

发布时间:2020-12-17 08:50:18 所属栏目:安全 来源:网络整理
导读:我是新的Angular和Flot,但有经验的Jquery和Javascript。我有点困惑,如何去绑定一个Flot图表到Angular数据模型,因为Flot是一个JQuery插件。我已经搜索过,但没有能够找到一个例子。 我也很乐意使用Highcharts,Google图表或任何其他图表解决方案。 由于图
我是新的Angular和Flot,但有经验的Jquery和Javascript。我有点困惑,如何去绑定一个Flot图表到Angular数据模型,因为Flot是一个JQuery插件。我已经搜索过,但没有能够找到一个例子。

我也很乐意使用Highcharts,Google图表或任何其他图表解决方案。

由于图表涉及重DOM操作,指令是要走的路。

数据可以保存在控制器中

App.controller('Ctrl',function($scope) {
    $scope.data = [[[0,1],[1,5],[2,2]]];
});

您可以创建自定义HTML tag1,指定要从中获取数据的模型

<chart ng-model='data'></chart>

这个角可以通过指令编译

App.directive('chart',function() {
    return {
        restrict: 'E',link: function(scope,elem,attrs) {
            var data = scope[attrs.ngModel];
            $.plot(elem,data,{});
            elem.show();
        }
    };
});

Example here。

对于修改DOM的大多数插件,此过程类似。

– * –

此外,您可以监视图表基础数据中的更改并重新绘制,因此您可以通过控制器的$ http服务获取数据,并自动更新视图。这可以通过修改指令定义对象中的链接函数来实现

var chart = null,opts  = { };

    scope.$watch(attrs.ngModel,function(v){
        if(!chart){
            chart = $.plot(elem,v,opts);
            elem.show();
        }else{
            chart.setData(v);
            chart.setupGrid();
            chart.draw();
        }
    });

注意Flot的API在指令中的用法来实现我们想要的。

Here the full example

1也可以是属性。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读