Angular nvd3图表 - 同一图表中的Scatter和Line

时间:2015-10-26 10:21:49

标签: charts line scatter angular-nvd3

我想创建一个包含点和线的图表,如下图所示。

enter image description here

我尝试过类型为:'line'+'barchart'的multichart,它似乎有效。 但是当我指定'scatter'+'line'时,不显示散射数据。

是否可以使用Angular nvd3执行此操作?

非常感谢你的帮助。

这是我的plunker代码:

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,
        transitionDuration: 500,
        xAxis: {
            tickFormat: function(d){
                return d3.format(',f')(d);
            }
        },
        yAxis: {
            tickFormat: function(d){
                return d3.format('.02f')(d);
            }
        }
    }
};    

$scope.data = [
    {
        key: 'X',
        type: 'scatter',
        values: [
            { x: 1, y: 125, size: Math.random(), shape: 'circle' },
            { x: 2, y: 125, size: Math.random(), shape: 'circle' },
            { x: 3, y: 140, size: Math.random(), shape: 'circle' }
        ],
        yAxis: 1
    },
    {
        key: 'Y',
        type: 'bar',
        values: [
            {x:1, y:109, label:'C2.1'},
            {x:2, y:102, label:'C2.2'},
            {x:3, y:105, label:'C2.3'}
        ],
        yAxis: 1
    },
    {
        key: 'Z',
        type: 'line',
        values: [
            { x: 1, y: 115 },
            { x: 2, y: 120 },
            { x: 3, y: 130 }
        ],
        yAxis: 1
    }
];
});

1 个答案:

答案 0 :(得分:0)

您的代码是正确的,可能是您使用的Angular-nvd3版本不正确 这是一个有效的plunker