问题标签 [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.
android - 使用带有三次折线图的 achartengine 的样条曲线不会通过所有点
我正在使用带有三次折线图的 achartengine,但它似乎不起作用。三次折线图不会通过系列中的所有点。在此示例中,图形远离点。我做错了什么,或者这是 achartengine 的实际问题?
代码:
matlab - 如何在同一张图上绘制具有均值和标准差的三次拟合?
我试图在同一张图上绘制均值、标准差和三次拟合。目前,我使用“errorbar”函数来绘制均值和标准差。我使用 fit 函数对我的数据进行三次拟合。如何在一张图表中显示所有信息?
这是我的代码
拟合数据:
绘制拟合数据
绘制均值和标准数据
sorting - 按出切线对点周围的三次贝塞尔样条曲线进行排序
我需要通过出切线围绕一个点对三次贝塞尔样条曲线进行排序。我的第一次尝试是确定出切角并按此排序。对于具有四个点 的样条曲线p0, p1, p2, p3
,出切角为:
这处理退化的三次方,实际上是二次方甚至一条线。但是,该点可能有两条切线角度相同的输出样条曲线,但稍后在样条曲线上的控制点或终点位置不同,这会影响排序顺序。
是否有一个很好的封闭式算法,用于按出射角度对两个任意贝塞尔样条进行排序,以处理退化情况,并在切线相等时使用样条的其余部分来消除情况的歧义?我可以通过尝试t
值来做到这一点,直到我消除歧义,但似乎可能有一个封闭形式的算法。
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 个县迭代这个过程。
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 类
点类
python - interpolate.splrep 错误:“必须为任务 =-1 提供结”
我正在尝试使用以下代码找到数据的最小二乘三次样条拟合:
其中 x 值为l_bins,y 值为np.log(l_hits) = list1。但我不断收到错误:
为什么我会收到此错误,我该如何解决?
bezier - 平滑三次贝塞尔曲线的条件
我有起点和终点以及这些点的曲线斜率值。现在我必须通过两个给定点绘制“平滑的 2D 贝塞尔曲线”。现在如何定位这两个控制点来实现这一点。有什么办法吗?我知道控制点必须位于各自起点和终点的切线上。
- 注意:“平滑曲线”是指最终情节中不应有陡峭的曲线或转弯。
matlab - 具有三对角矩阵的样条三次
我为我在 MATLAB 上的关于三次样条插值与三对角矩阵的家庭作业编写了这段代码。我遵循算法的所有步骤,我真的没有发现我的错误。代码可以使用二级函数,但是当我输入例如 sin(x) 时,结果不是样条曲线并且不知道为什么,因为使用其他函数我没有问题。谁能帮我找出错误?谢谢
三次样条脚本:
三对角矩阵:
tk 点中的样条评估:
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
。
r - 在 R 中计算二维样条曲线
我正在尝试计算通过一系列 xy 坐标的贝塞尔样条曲线。cscvn
一个示例类似于Matlab中函数的以下输出(示例链接):
我相信(不再维护的)grid
包用于执行此操作(grid.xspline
功能?),但我无法安装该包的存档版本,并且没有找到与我想要的完全一致的任何示例.
这个bezier
包看起来也很有希望,但它很慢,我也不能完全正确:
如您所见,它不通过除结束值之外的任何点。
我将非常感谢这里的一些指导!