绘制曲线/ Spline插件,它与FillBetween插件一起使用?

时间:2013-04-30 17:25:40

标签: javascript flot

Flot FillBetween插件可以很好地与折线图配合使用。但是我需要平滑线条并使它们更加弯曲。我看过CurvedLined pluginSpline plugin,但两者都无法正常使用fillbetween插件。

有没有办法使用两条曲线/样条系列并填充它们之间的区域?像下图这样的东西。当一个系列穿过另一个系列时,也填充两个系列之间的任何封闭区域。

enter image description here

1 个答案:

答案 0 :(得分:1)

我不熟悉FillBetween插件。我将专注于为平滑部分做准备。 我遇到了类似的问题,那些平滑选项对我来说也不起作用。我使用外部插件进行平滑处理。它的名字是smooth.js,它对我有用。 Smooth.js重新获取数据数组并返回一个函数。要获得"平滑点",将函数应用于0和数组长度之间的任何值。我们的想法是获得比原始数据集更多的点。

例如,要平滑名为test:

的值数组
//obtaining smoothing function

var s = Smooth(test, {
    method: Smooth.METHOD_CUBIC,
});

//obtaining smoothed data
//asking for 10 "smoothed points" per each point in the original dataset
test_smoothed = [];
for (var i = 0; i <= test.length; i = i + .1) {
    test_smoothed.push(s(i));
}

我用这个例子做了一个JSFiddle。 您可以使用此插件并将平滑后的数据传递给flot,然后使用FillBetween。