Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在JQuery Flot上复制Y轴_Javascript_Jquery_Flot - Fatal编程技术网

Javascript 如何在JQuery Flot上复制Y轴

Javascript 如何在JQuery Flot上复制Y轴,javascript,jquery,flot,Javascript,Jquery,Flot,我能够使用JQuery Flot,这是一个非常好的工具。然而,我找不到解决我问题的好办法 我想复制Y轴,这样我可以在左边显示1,在右边显示1,这样用户在比较图表最右边的数据时,就不必在图表最左边滚动。我假设他们将通过智能手机访问它 JQuery Flot允许多个轴,但对于每个轴,我需要一组不同的数据,如本例所示: 但我不想复制数据。难道我不能“告诉”弗洛特使用同一组数据复制yaxis吗 您可以使用该功能强制flot显示第二个yaxis,即使它没有指定数据系列: // hook function

我能够使用JQuery Flot,这是一个非常好的工具。然而,我找不到解决我问题的好办法

我想复制Y轴,这样我可以在左边显示1,在右边显示1,这样用户在比较图表最右边的数据时,就不必在图表最左边滚动。我假设他们将通过智能手机访问它

JQuery Flot允许多个轴,但对于每个轴,我需要一组不同的数据,如本例所示:

但我不想复制数据。难道我不能“告诉”弗洛特使用同一组数据复制yaxis吗

您可以使用该功能强制flot显示第二个yaxis,即使它没有指定数据系列:

// hook function to mark axis as "used"
// and assign min/max from left axis
pOff = function(plot, offset){
    plot.getYAxes()[1].used = true;
    plot.getYAxes()[1].datamin = plot.getYAxes()[0].datamin;
    plot.getYAxes()[1].datamax = plot.getYAxes()[0].datamax;
}

$.plot("#placeholder2", [ { data: d2 } ], { 
    hooks: { processOffset: [pOff] },
    yaxes: [ {},
             {position: 'right'} // add second axis
    ]
});
不过,根据轴的配置方式,这可能会比较混乱。您必须从左轴窃取参数才能使其工作(正如我在上面对datamin/datamax所做的那样)

如果这是我的代码,我会使用你的复制数据方法。您并没有真正复制任何内容,只是将相同的数组分配给两个系列。然后我将第二个系列配置为不绘制

var d2 = [[0, 3], [4, 8], [8, 5], [9, 13]];

// use the same data but toggle off the lines...
$.plot("#placeholder", [ { data: d2 }, {data: d2, yaxis: 2, lines: {show: false}} ], {
    yaxes: [ {},
             {position: 'right'} ]
});

下面是一个演示这两种方法的示例。

先生,这个答案太棒了!从小提琴的例子中,我注意到我可以使用hooks的功能,而且效果很好。很好的答案提供了两种可能的解决方案+小提琴。