问题标签 [cubic-spline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1338 浏览

android - 使用带有三次折线图的 achartengine 的样条曲线不会通过所有点

我正在使用带有三次折线图的 achartengine,但它似乎不起作用。三次折线图不会通过系列中的所有点。在此示例中,图形远离点。我做错了什么,或者这是 achartengine 的实际问题?

三次折线图

代码:

0 投票
1 回答
234 浏览

matlab - 如何在同一张图上绘制具有均值和标准差的三次拟合?

我试图在同一张图上绘制均值、标准差和三次拟合。目前,我使用“errorbar”函数来绘制均值和标准差。我使用 fit 函数对我的数据进行三次拟合。如何在一张图表中显示所有信息?

这是我的代码

拟合数据:

绘制拟合数据

绘制均值和标准数据

0 投票
1 回答
158 浏览

sorting - 按出切线对点周围的三次贝塞尔样条曲线进行排序

我需要通过出切线围绕一个点对三次贝塞尔样条曲线进行排序。我的第一次尝试是确定出切角并按此排序。对于具有四个点 的样条曲线p0, p1, p2, p3,出切角为:

这处理退化的三次方,实际上是二次方甚至一条线。但是,该点可能有两条切线角度相同的输出样条曲线,但稍后在样条曲线上的控制点或终点位置不同,这会影响排序顺序。

是否有一个很好的封闭式算法,用于按出射角度对两个任意贝塞尔样条进行排序,以处理退化情况,并在切线相等时使用样条的其余部分来消除情况的歧义?我可以通过尝试t值来做到这一点,直到我消除歧义,但似乎可能有一个封闭形式的算法。

0 投票
2 回答
1018 浏览

r - R - group_by 利用 splinefun

我正在尝试按 Year 和 CountyID 对数据进行分组,然后在子集数据上使用 splinefun(三次样条插值)。我对想法持开放态度,但是 splinefun 是必须的,不能改变。

这是我尝试使用的代码:

这是我的数据示例 Year = 2010 : 2013, Agegrp = 1 : 17 和 CountyIDs 等于美国的所有县。

我正在做的是采用 Agegrp 1 : 17 并将分组分成 0-84 年。现在每个组代表 5 年。splinefun 允许我这样做,同时为该过程提供一定程度的数学严谨性,即 splinefun 允许我提供美国每个县的每个年龄的人口总数。

最后,splinefun 代码本身确实可以工作,但在 group_by 函数中却没有,它会产生:

我使用的 splinefun 代码是这样工作的

在一年内对一个 CountyID 进行了测试。我需要在“x”年和大约 3200 个县迭代这个过程。

0 投票
1 回答
6658 浏览

android - 使用 CubicTo 绘制贝塞尔曲线

以下代码生成 BezierCurves 并创建要在画布上绘制的 Path 对象。我将此代码从 C#.Net 转换为 Android。

问题:当我绘制点时,这些点不会形成连续曲线。它在中间中断并再次继续。我认为问题出AddBeziers在我使用cubicTo生成曲线的地方。GraphicsPath.AddBeziers这可能与.Net 中的方法不匹配。

我该如何解决这个问题?

产生的点

  • x 坐标 - [0, 55, -44, -54, -44, 55, 0]
  • y 坐标 - [0, -189, -20, -125, -230, -59, -250]

这是必须在画布上绘制的图形。

适用于 Android 的 AddBeziers 方法

适用于 Android 的 BezierCurve 类

点类

0 投票
1 回答
478 浏览

python - interpolate.splrep 错误:“必须为任务 =-1 提供结”

我正在尝试使用以下代码找到数据的最小二乘三次样条拟合:

其中 x 值为l_bins,y 值为np.log(l_hits) = list1。但我不断收到错误:

为什么我会收到此错误,我该如何解决?

0 投票
2 回答
1339 浏览

bezier - 平滑三次贝塞尔曲线的条件

我有起点和终点以及这些点的曲线斜率值。现在我必须通过两个给定点绘制“平滑的 2D 贝塞尔曲线”。现在如何定位这两个控制点来实现这一点。有什么办法吗?我知道控制点必须位于各自起点和终点的切线上。

  • 注意:“平滑曲线”是指最终情节中不应有陡峭的曲线或转弯。
0 投票
1 回答
1793 浏览

matlab - 具有三对角矩阵的样条三次

我为我在 MATLAB 上的关于三次样条插值与三对角矩阵的家庭作业编写了这段代码。我遵循算法的所有步骤,我真的没有发现我的错误。代码可以使用二级函数,但是当我输入例如 sin(x) 时,结果不是样条曲线并且不知道为什么,因为使用其他函数我没有问题。谁能帮我找出错误?谢谢

三次样条脚本:

三对角矩阵:

tk 点中的样条评估:

0 投票
2 回答
1635 浏览

math - 三次贝塞尔曲线上的位置(t)

我能找到的唯一计算公式涉及t范围 [0, 1],但我不知道走完整条路径需要多长时间,所以我无法计算(1 - t)

我知道我的旅行速度,但事先计算总时间似乎是一个沉重的想法(我实际上也不知道如何进行计算)。在不知道总时间的情况下计算位置的方程式是什么?

编辑为了澄清三次贝塞尔曲线:我有四个控制点(P0 到 P1),并且要在 t 曲线上获得一个值,我需要这样使用这四个点:

B(t) = (1-t)^3P0 + 3t(1-t)^2P1 + 3t^2(1-t)P2 + t^3P3

我没有使用参数方程来定义曲线。控制点定义了曲线。我需要的是一个不需要知道范围的方程t

0 投票
3 回答
2653 浏览

r - 在 R 中计算二维样条曲线

我正在尝试计算通过一系列 xy 坐标的贝塞尔样条曲线。cscvn一个示例类似于Matlab中函数的以下输出(示例链接):

在此处输入图像描述

我相信(不再维护的)grid包用于执行此操作(grid.xspline功能?),但我无法安装该包的存档版本,并且没有找到与我想要的完全一致的任何示例.

这个bezier包看起来也很有希望,但它很慢,我也不能完全正确:

在此处输入图像描述

如您所见,它不通过除结束值之外的任何点。

我将非常感谢这里的一些指导!