将对象数组传递给 FLOT

Passing array of objects to FLOT

全部,

我正在使用 FLOT,我正在尝试在同一张图表上组合几张图。第一个图是"horizontal stacked bar"类型,第二个是'garden-variety'时变量...

我可以单独显示这两个图,但我不能将它们组合起来...

请注意,两个图共享 x 轴。

第一个剧情

var min = -10;
var data1 = [
                { "data": [[ 2, min]], "color": 1}, 
                { "data": [[ 3, min]], "color": 0}, 
                { "data": [[ 1, min]], "color": 1}, 
                { "data": [[ 8, min]], "color": 2}, 
                { "data": [[ 6, min]], "color": 1}
            ];
var options1 = {
    series: {
        stack: true,
        lines: {show: false, steps: false },
        bars: {show: true, horizontal:true, width: 1}
    },
    yaxis: { 
        min: min, 
        max: 20
    }
};
$.plot("#placeholder1", data1, options1);

第二个情节

var data2 = [];
var t = [];
var i = 0;
for (var tt = 0; tt <= 20; tt += 1) {
    data2.push([i, Math.exp(-tt/10.)*9*Math.cos(2.0*Math.PI*0.1*tt)+9]);
    t.push(tt);
    i++;
}
var options2 = {
    series: {
        lines: {
            show: true
        }
    },
    yaxis: {
        min: min,
        max: 20
    }
};

$.plot("#placeholder2", [data2], options2); 

显示两个图的尝试失败

var obj1 = {
    data: data1,
    series: {
        stack: true,
        lines: {show: false, steps: false },
        bars: {show: true, horizontal:true, width: 1}
    }
};

var obj2 = {
    data: [data2],
    series: {
        lines: {
            show: true
        }
    },
    yaxis: {
        min: min,
        max: 20
    }
}
$.plot("#placeholder3", obj1, obj2); 

在这里查看笔:http://codepen.io/vpappano/pen/BQrgRQ

任何帮助将不胜感激。

谢谢!!! :-)

多点:

  • data1已经是一个数据系列对象数组,不能是data属性另一个数据系列
  • data2已经是一个数组,不需要额外的括号
  • 选项的一些问题(每个数据系列和一般),请参阅固定代码
  • plot() 的调用不支持您代码中的多个数据系列,将数据系列数组作为第二个参数,将选项作为第三个参数

修复了 CodePen:http://codepen.io/anon/pen/vyjYNo