无法使用 FlotJs 绘制 2 个单独的图形

Cannot plot 2 separate graphs using FlotJs

我正在尝试使用 flotJS 绘制 2 个单独的图形(实际上是 9 个,但目前只有 2 个),数据以某种方式混合并在两个图形上绘制相同的混合数据

这是我的 JS 代码:

var graphData1, graphData2, graphData3 = [];
var graphBuffer = 1000;
var xmin = 0;
var xmax = 5;

var options = {
    xaxes: [
        {position: 'bottom', autoScale: 'none', min: 0, max: 5}
    ],
    yaxes: [
        {position: 'left', autoScale: 'none', min: -1.5, max: 1.5}
    ],
    zoom: {interactive: true},
    pan: {interactive: true}
};


function deleteGraph() {
    graphData1 = graphData2 = graphData3 = [];

    $.plot("#graph1", [{graphData1}], options);
    $.plot("#graph2", [{graphData2}], options);
    //$.plot("#graph3", [{graphData3}], options);
}

function updateGraph(data) {

    var datatmp = data.data;

    // Formatea y Almacena datos a graficar
    datatmp.forEach(function (sample) {
        graphData1.push([parseFloat(sample.timestamp.toFixed(4)), parseFloat(sample.sensor1.toFixed(4))]);
        //graphData2.push([parseFloat(sample.timestamp.toFixed(4)), parseFloat(sample.sensor2.toFixed(4))]);
    });

    $.plot("#graph1", [graphData1], options);
    $.plot("#graph2", [graphData2], options);

}

使用此代码,输出为:

如您所见,即使评论了//graphData2.push([parseFloat(sample.timestamp.toFixed(4)), parseFloat(sample.sensor2.toFixed(4))]);

,它也会在两个图表上绘制相同的信息

但是,如果我删除评论,结果是这样的:

如您所见,它混合了数据并在两个图表上绘制了相同的混合数据

如何在不同的图表上绘制不同的数据?

感谢您的帮助...

您正在设置 graphData1 = graphData2,因此它们是同一个数组。然后将所有数据点推送到两个图表中显示的那个数组中。

替换

var graphData1, graphData2, graphData3 = [];

// and

function deleteGraph() {
    graphData1 = graphData2 = graphData3 = [];

var graphData1 = [], graphData2 = [], graphData3 = [];

// and

function deleteGraph() {
    graphData1 = [];
    graphData2 = [];
    graphData3 = [];