問題タブ [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 に答える
234 参照

matlab - 平均と標準偏差を使用して 3 次近似を同じグラフにプロットするにはどうすればよいですか?

同じグラフに平均、標準偏差、および 3 次フィッティングをプロットしようとしています。現時点では、「エラーバー」関数を使用して平均と標準偏差をプロットしています。fit 関数を使用して、データの 3 次近似を取得します。すべての情報を 1 つのグラフに表示するにはどうすればよいですか?

これが私のコードです

データを適合させるには:

当てはめたデータをプロットするには

平均データと標準データをプロットするには

0 投票する
1 に答える
158 参照

sorting - 点の周りの 3 次ベジエ スプラインを外接接線で並べ替える

ポイントの周りの 3 次ベジエ スプラインを、外接接線で並べ替える必要があります。私の最初の試みは、外向きの接線角度を決定し、それによってソートすることでした。4 つの点を持つスプライン の場合p0, p1, p2, p3、外接接線角度は次のとおりです。

これは、実際には 2 次または直線である 3 次を退化させます。ただし、ポイントには、同じ接線角度を持つ 2 つの出力スプラインが含まれる場合がありますが、制御点または終点の位置は、スプラインの後で、並べ替え順序に影響を与えます。

退化したケースを処理し、スプラインの残りの部分を使用して接線が等しい場合のケースを明確にする、外向きの角度で 2 つの任意のベジェ スプラインを並べ替えるための優れた閉形式アルゴリズムはありますか? 曖昧さがなくなるまで値を試すことでそれを行うことtができますが、閉じた形式のアルゴリズムが存在する可能性があるようです。

0 投票する
2 に答える
1018 参照

r - R - splinefun を利用した group_by

Year と CountyID でデータをグループ化し、サブセット データで splinefun (3 次スプライン補間) を使用しようとしています。私はアイデアを受け入れますが、splinefun は必須であり、変更することはできません。

これが私が使用しようとしているコードです:

これが私のデータのサンプルで、Year = 2010 : 2013、Agegrp = 1 : 17 で、CountyID は米国内のすべての郡と同じです。

私がやっていることは、Agegrp 1 : 17 を取得し、グループを 0 ~ 84 の個々の年に分割することです。現在、各グループは 5 年を表しています。splinefun を使用すると、プロセスに一定レベルの数学的厳密さを提供しながら、これを行うことができます。つまり、splinefun を使用すると、米国の各郡の年齢ごとの人口合計を提供できます。

最後に、splinefun コード自体は機能しますが、group_by 関数内では機能しません。次のようになります。

私が使用しているsplinefunコードは次のように機能します

これは、1 年間に 1 つの CountyID でテストされました。このプロセスを「x」年、約 3200 郡にわたって繰り返す必要があります。

0 投票する
1 に答える
6658 参照

android - CubicTo を使用してベジエ曲線を描く

次のコードは BezierCurves を生成し、キャンバスに描画される Path オブジェクトを作成します。このコードを C#.Net から Androidに変換しました。

問題 :ポイントを描画すると、ポイントが連続した曲線を形成しません。途中で壊れてまた続きます。問題は、AddBeziers私が使用cubicToした曲線の生成にあると思います。GraphicsPath.AddBeziers.Net の Methodと一致しない可能性があります。

どうすればこれを解決できますか?

発生したポイント

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

これは、キャンバスに描かなければならない図形です。

Android の AddBezier メソッド

Android の BezierCurve クラス

ポイントクラス

0 投票する
1 に答える
478 参照

python - interpolate.splrep エラー:「タスクにはノットを指定する必要があります =-1」

次のコードを使用して、データの最小二乗 3 次スプライン フィットを見つけようとしています。

x 値はl_binsで、y 値はnp.log(l_hits) = list1です。しかし、私はエラーが発生し続けます:

このエラーが発生する理由と修正方法を教えてください。

0 投票する
1 に答える
1793 参照

matlab - 三重対角行列をもつスプライン キュービック

三重対角行列を使用した 3 次スプライン補間について、MATLAB での宿題のためにこのコードを書きました。私はアルゴリズムのすべてのステップに従いますが、実際にはエラーが見つかりません。コードは 2 年生の関数では問題ありませんが、たとえば、sin(x) を配置すると、結果はスプラインではなく、他の関数では問題がないため理由がわかりません。誰でもエラーを見つけるのを手伝ってもらえますか? ありがとう

3 次スプライン スクリプト:

三重対角行列:

tk ポイントでのスプライン評価:

0 投票する
2 に答える
1635 参照

math - 3次ベジエ曲線上の位置(t)

私が見つけることができるこれを計算するための唯一の方程式はt、[0, 1] の範囲に含まれますが、パス全体を移動するのにどれくらいの時間がかかるかわからないため、計算できません(1 - t)

私は自分が移動している速度を知っていますが、事前に合計時間を計算するのは難しい考えのようです (また、実際にその計算を行う方法も知りません)。合計時間がわからなくても位置を求める式は?

編集3 次ベジエ曲線を明確にするために: 4 つの制御点 (P0 から P1) があり、t を使用して曲線上の値を取得するには、4 つの点をそのまま使用する必要があります。

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

曲線を定義するためにパラメトリック方程式を使用していません。コントロール ポイントは、曲線を定義するものです。私が必要としているのは、 の範囲を知る必要のない方程式ですt

0 投票する
3 に答える
2653 参照

r - R で 2D スプライン曲線を計算する

xy 座標のシーケンスを通過するベジエのようなスプライン曲線を計算しようとしています。例はcscvn、Matlab の関数からの次の出力のようになります ( example link )。

ここに画像の説明を入力

(もうメンテナンスされていない)gridパッケージがこれを行うために使用されていたと思います ( grid.xsplinefunction?) が、アーカイブされたバージョンのパッケージをインストールできず、私が望むものと正確に一致する例が見つかりません.

パッケージも有望に見えますが、bezier非常に遅く、完全に理解できません。

ここに画像の説明を入力

ご覧のとおり、終了値以外のポイントを通過していません。

ここでいくつかのガイダンスをいただければ幸いです。