【发布时间】:2020-04-06 09:01:52
【问题描述】:
请允许我将其与难度增加的问题分开:
1.
我有一些一维曲线,以(n,) 点数组的形式给出。
我想让它重新采样k 次,并让结果来自通过所有点的三次样条。
这可以通过interp1d来完成
2.
该曲线以非相同间隔的样本作为形状数组(n, 2) 给出,其中(:, 0) 代表样本时间,(:, 1) 代表样本值。
我想以 k 个相同的时间间隔重新采样曲线。
如何做到这一点?
我当时想我可以做t_sampler = interp1d(np.arange(0,k),arr[:, 0]),然后interp1d(t_sampler(np.arange(0,k)), arr[:, 1])
我错过了什么吗?
3.
如何以相等的距离间隔重新采样曲线? (问题 2 是相等的 时间 间隔)
4.
如果曲线是由形状为 (n, 4) 的数组给出的 3d 曲线,其中 (:,0) 是(非均匀)采样时间,其余的是采样位置?
很抱歉,对于单个问题中的许多问题,它们似乎太相似了,无法为每个问题打开一个新问题。
【问题讨论】:
-
2. 对您有用吗? 3 - 你有没有尝试制作一个 poly 或 interp1d 交换 x 和 y(时间和距离),然后做与 2. 相同的操作?
-
查看 splprep 的曲线和沿 rhe 曲线的距离
-
@wwii 2. 在
interp1d(t_sampler(np.arange(0,k)), arr[:, 1])上给我"A value in x_new is below the interpolation " "range.",我不知道为什么 -
可能相关:
ValueError: A value in x_new is above the interpolation range.- ...? ... 没有minimal reproducible example(强调最小,可重现)将很难提供帮助。 -
Sorry for many-questionsin-single-question,- 提出多个问题的一个问题是可能会有一个或多个问题的问答,但不会有一个涵盖所有问题的问答。您应该使用minimal reproducible example 一次询问一个,如果合适的话,部分或全部可能会被标记为重复
标签: python arrays numpy scipy curve-fitting