Veritabanından gelen sorgularla alınan kodlanmış JSON Verisini Angular-nvD3 grafiğe yüklemek istiyorum ancak nasıl yapılacağını bilmiyorum veya hangisi en iyisi böyle bir görevi yerine getirmek.JSON Verisini Angular-nvD3 Grafiğine Yüklemek (AngularJS)
Kodlanmış JSON verilerini bir api ile bir veritabanından (tablo PRODUCTS) gelen sorgularla alıyorum. Bu verileri, verilen api'ye $http
istekleri (bir fabrikaya yüklenmiş) ile tablolara başarıyla yükledim. Veriler, bir fabrikada sözlükte $http
istekleri (hizmetlerde bulunur) istekleri ile kaydedilir.
tablonun örnek (Tablo ÜRÜNLER):
İD STOK
fabrikanın Örnek:
.factory('services', ['$http', function($http){
var serviceBase = 'services/'
var object = {};
object.getData = function(){
return $http.get(serviceBase + 'data');
};
return object;
}]);
bir kontrolörün 363.210
örnek ("ng-repeat="data in get_data"
" görünümünde olan) bir tabloya verileri görüntülemek için: veri formatının
.controller('TablesCtrl', ['$scope', 'services', function($scope, services) {
services.getData().then(function(data){
$scope.get_data = data.data;
});
}]);
Örnek:
[{"0":"1","1":"100","ID":"1","STOCK":"100"},{"0":"2","1":"275","ID":"2","STOCK":"275"}]
pasta grafik - Bu, (deposundan) adempt yapmak istediğim komut dosyasının bir örneğidir:
'use strict';
angular.module('mainApp.controllers')
.controller('pieChartCtrl', function($scope){
$scope.options = {
chart: {
type: 'pieChart',
height: 500,
x: function(d){return d.key;},
y: function(d){return d.y;},
showLabels: true,
duration: 500,
labelThreshold: 0.01,
labelSunbeamLayout: true,
legend: {
margin: {
top: 5,
right: 35,
bottom: 5,
left: 0
}
}
}
};
$scope.data = [
{
key: "One",
y: 5
},
{
key: "Two",
y: 2
},
{
key: "Three",
y: 9
},
{
key: "Four",
y: 7
},
{
key: "Five",
y: 4
},
{
key: "Six",
y: 3
},
{
key: "Seven",
y: .5
}
];
});
HTML:
<div ng-app="myApp">
<div ng-controller="pieChartCtrl">
<nvd3 options="options" data="data"></nvd3>
</div>
</div>
Sorum şudur: $scope.data
içine verileri manuel yazmak yerine bir Eğik-nvD3 grafiğinin içine böyle kodlanmış alınan JSON verilerini yüklemek için nasıl mümkün olduğunu?
Çok teşekkür ederim!
: Eğer (genellikle varsayılan olarak açısal uygulamalarda dahildir rağmen) lodash kullanmak istemiyorsanız
Alternatif olarak, böyle bir şey yapabileceğini Doğrudan grafiğe takılabiliyorsunuz, o zaman sahip olduğunuz şey işe yarayacaktır. Sadece services.getData() olur, sonra (function (data) { $ scope.data = data.data; }); '. Aksi halde, verileri grafiğin beklediği bir yapıya masaj yapmak zorunda kalabilirsiniz. –
[Bu broşürü inceleyin] (http://plnkr.co/edit/QWFunjULS325rMAPcXNW?p=preview). –
Sanırım verileri doğrudan tabloya bağlayamıyorum. Sorum şu: verileri grafiğin beklediği yapıya nasıl uygularım? Örneğin, iki sorgu ile: "tuşları" olan bir nesne ve diğeri "y" (değerler) ile? Her ikisi de JSON formatında. – Ariana