当前位置: 首页 > 面试题库 >

Kendo+角度图数据

商和颂
2023-03-14
问题内容

我正在尝试使用角度的Kendo图表,但在显示数据时遇到问题,这是我的代码:

HTML:

<div  kendo-chart="rchart" data-k-options="chartOptions" data-role="chart" class="k-chart" style="position: relative;"></div>

Javascript:

resultService.getResult().then(function (resultResponse) {
         $scope.data = resultResponse.data;
         $scope.oldReps = _.pluck($scope.data.TreningScores.Item1, 'Item2');
         $scope.newReps = _.pluck($scope.data.TreningScores.Item2, 'Item2');
         $scope.categories = _.pluck($scope.data.TreningScores.Item1, 'Item1');
     });


$scope.chartOptions = {

         legend: {
             position: "bottom"
         },
         seriesDefaults: {
             type: "column"
         },
         series: [{
             name: "Total Visits",
             data: $scope.oldReps
         }, {
             name: "Unique visitors",
             data: $scope.newReps
         }],
         valueAxis: {
             line: {
                 visible: false
             }
         },

         tooltip: {
             visible: true,
             format: "{0}"
         }
     };

问题是从服务器获取数据后图表未更新,我尝试过这样刷新图表(但没有运气):

$scope.chart = {        
        refreshChart : function() {
            $scope.rchart.refresh();
        },
    };

并在以下方法中调用此方法:

resultService.getResult().then(function (resultResponse) {});

而且我也尝试过定义$scope.chartOptions相同的函数,但是什么也没定义。有没有什么办法解决这一问题 ?


问题答案:

它的文档记录不充分,但是要获得具有远程数据绑定的UI控件以在从服务器返回数据后进行更新,
需要从Angular侧观察集合中的更新,又需要从Kendo将数据对象重新绑定至其相应的UI控件侧。

控制器中 ,使用监视数据对象的更改$watchCollection,并更新绑定到这些集合的对象/属性:

// API call
$http.get('...').success(function(data){
   $scope.data = data;
});

// KendoUI config object
$scope.chart = {
    dataSource: {
        data: $scope.data
    }
};

// Watch for changes to $scope.data
$scope.$watchCollection('data', function(newData) {

    // Update data bindings with changes
    $scope.chart.dataSource.data = newData;
});

在您的 视图中 ,定义通过k-rebindAngular-Kendo指令进行更改时UI控件应绑定的对象:

<div kendo-chart k-options="chart" k-rebind="chart"></div>

这是绑定到远程数据的图表的示例:

http://codepen.io/micjamking/pen/4980a5e22cbd4de01264fadae5f25f06



 类似资料:
  • 我正在使用剑道用户界面和角度网格应用程序。我的网格由JSON数据(单独的文件)填充,我正在使用angular service: 我的JSON数据: 我的Angular服务: 这是我的控制器: 这是我的JSON,其中包含documentType的数据: 这是我的HTML: 在超文本标记语言中,我有一个包含文档类型数据的dropdown列表,我的dropdown列表中填充了JSON数据。但是,问题在于

  • 地图全屏        在LSV中可以实现地图全屏显示效果,提高演示效果。在“视图”菜单栏中“视图角度”栏点击“地图全屏”。全屏效果如下图所示,点击ESC退出全屏。 全球视图        在“视图”菜单栏中“视图角度”栏点击“全球视图”可以迅速切换到全球视图视角。 正北方向        在“视图”菜单栏中“视图角度”栏点击“正北方向”或者双击罗盘可以迅速切换到正北方向视角。 垂直视角    

  • 地图全屏        在LSV中可以实现地图全屏显示效果,提高演示效果。在“视图”菜单栏中“视图角度”栏点击“地图全屏”。全屏效果如下图所示,点击ESC退出全屏。 全球视图        在“视图”菜单栏中“视图角度”栏点击“全球视图”可以迅速切换到全球视图视角。 正北方向        在“视图”菜单栏中“视图角度”栏点击“正北方向”或者双击罗盘可以迅速切换到正北方向视角。 垂直视角    

  • 我正在尝试使用angular chartjs创建一个条形图,我需要一个在每个条形图上都可见的数据标签 例子:http://jsfiddle.net/uh9vw0ao/ 我尝试了以下代码在js: html代码如下: 上面的代码给出了数据集未定义的错误。和数据标签不可见。 请帮忙。

  • 我需要一些帮助来理解如何将HTML与Angular一起使用。我这里有个目标。我想在下拉列表中显示汽车的。但是当您选择一辆时,变量应该是整个car对象。但是仍应仅显示。 这里有一个玩这个的地方:https://stackblitz.com/edit/angular-cwmwke

  • 问题内容: 在kendo Scheduler控件中,我正在使用组头模板,并且想在我的资源视图中进行分页 http://dojo.telerik.com/IMUjA 如果我想添加2个其他资源,则此示例仅具有2个资源,我希望每页仅显示2个资源,并且希望有next / prev按钮来更改在调度程序显示中被视为分页的资源 问题答案: 我想要一些类似我在此链接中所做的示例: dojo.telerik.com