2016-04-28 2 views
0

Я хочу создать многоканальный график с линейной и многобайтовой диаграммой, используя Angularjs NvD3. Я должен создать график линии, но не могу показать диаграмму Multibar, я думаю, что я ошибаюсь. Вот plunkerУгловой NvD3 Multichart не работает

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

app.controller('MainCtrl', function($scope) { 
$scope.options = { 
     chart: { 
      type: 'multiChart', 
      height: 450, 
      margin : { 
       top: 30, 
       right: 60, 
       bottom: 50, 
       left: 70 
      }, 
      color: d3.scale.category10().range(), 
      //useInteractiveGuideline: true, 
      duration: 500, 
      xAxis: { 
       tickFormat: function(d){ 
        return d3.format(',f')(d); 
       } 
      }, 
      yAxis1: { 
       tickFormat: function(d){ 
        return d3.format(',.1f')(d); 
       } 
      }, 
      yAxis2: { 
       tickFormat: function(d){ 
        return d3.format(',.1f')(d); 
       } 
      } 
     } 
    }; 


    /***********Line*********/ 
    $scope.data = []; 
    $scope.data[0]={}; 
    $scope.data[0].key='Stream'; 
    $scope.data[0].yAxis=1; 
    $scope.data[0].type='line'; 
    $scope.data[0].values=[]; 
    $scope.data[0].values[0]={}; 
    $scope.data[0].values[0].x=0; 
    $scope.data[0].values[0].y=4; 
    $scope.data[0].values[1]={}; 
    $scope.data[0].values[1].x=1; 
    $scope.data[0].values[1].y=8; 


    $scope.data[1]={}; 
    $scope.data[1].key='Stream2'; 
    $scope.data[1].yAxis=1; 
    $scope.data[1].type='line'; 
    $scope.data[1].values=[]; 
    $scope.data[1].values[0]={}; 
    $scope.data[1].values[0].x=0; 
    $scope.data[1].values[0].y=4; 
    $scope.data[1].values[1]={}; 
    $scope.data[1].values[1].x=1; 
    $scope.data[1].values[1].y=8; 
    /*******************************/ 
    /********MultiBar Chart**********/ 
    $scope.data[2]={}; 
    $scope.data[2].key='Stream3'; 
    $scope.data[2].yAxis=2; 
    $scope.data[2].type='multiBarChart'; 
    $scope.data[2].values=[]; 

    $scope.data[2].values[0]={}; 
    $scope.data[2].values[0].key="Stream0"; 
    $scope.data[2].values[0].values=[]; 
    $scope.data[2].values[0].values[0]={}; 
    $scope.data[2].values[0].values[0].key="Stream0"; 
    $scope.data[2].values[0].values[0].series=0; 
    $scope.data[2].values[0].values[0].x=0; 
    $scope.data[2].values[0].values[0].y=5; 

    $scope.data[2].values[1]={}; 
    $scope.data[2].values[1].key="Stream1"; 
    $scope.data[2].values[1].values=[]; 
    $scope.data[2].values[1].values[0]={}; 
    $scope.data[2].values[1].values[0].key="Stream1"; 
    $scope.data[2].values[1].values[0].series=1; 
    $scope.data[2].values[1].values[0].x=0; 
    $scope.data[2].values[1].values[0].y=4; 
    /*********************************/ 
    console.log($scope.data); 


}); 

ответ

-2

пожалуйста, найти ниже plunkr с «multichart с настраиваемым подсказке, условные точки подсветки, область диаграммы, гистограммы и линейной диаграммы

шлепнуть в комментариях

+0

HTTP: // plnkr. сотрудничество/редактировать/XBg8tUZOhWHt3sBPuPyL? р = предварительный просмотр –

+0

Отсутствие объяснений о том, почему выше код не работает, и поэтому пример plunker делает работу – Stephane

+0

http://plnkr.co/edit/nUPV1j2DzC70S3AQvSOU?p=preview пожалуйста найти исправленную трески e в приведенной выше ссылке. проблема заключается в том, что тип графа нельзя указать как «multiBarChart», так как такого типа графа нет (multiBarChart - это имя, заданное разработчиками nvd3 для типа графика, где вы можете иметь несколько типов графиков suvh как область, разброс, линию и т. д.) –