0

Ich versuche, verschiedene Diagramme von einem Array namens $scope.dataset mit ng-Wiederholung zu rendern, aber es passiert nicht.Angular-nvD3 (krispo) einzeiliges Diagramm mit ng-repeat

<div ng-repeat="data in dataset"> 
    <nvd3 options="options" data="data" class="with-3d-shadow with-transitions"></nvd3> 
</div> 

Aber ich bekomme diese in Firefox Konsolen-

Error: a.map is not a function

Also habe ich versucht, den gleichen Code in ihre plunkr zu setzen - linechart-nvd3, und das auch nicht funktioniert. Der Graph wird jedoch gerendert, wenn ich das gesamte Array, d. H. $scope.dataset anstelle von ng-repeat, verwende. Jede Hilfe wäre willkommen. Vielen Dank.

Antwort

1

diesen Code in Ihre sinAndCos() -Methode Versuchen:

//Line chart data should be sent as an array of series objects. 
      return [ 
       [{ 
        values: sin,  //values - represents the array of {x,y} data points 
        key: 'Sine Wave', //key - the name of the series. 
        color: '#ff7f0e', //color - optional: choose your own line color. 
        strokeWidth: 2, 
        classed: 'dashed' 
       }], 
       [{ 
        values: cos, 
        key: 'Cosine Wave', 
        color: '#2ca02c' 
       }], 
       [{ 
        values: sin2, 
        key: 'Another sine wave', 
        color: '#7777ff', 
        area: true  //area - set to true if you want this line to turn into a filled area chart. 
       }] 
      ]; 

in Ihrem plunkr setzen den gleichen Code So - http://plnkr.co/edit/lBKFld?p=preview.

Hinweis: Angular-nvD3-Diagramm müssen Sie Array von Objekt senden. Hier sende ich jedes Element als ein Array von Objekten. Wenn du nun ng-repeat benutzt, wird es perfekt funktionieren.

+0

Danke eine Tonne. Es funktionierte :) – ThatBird