13,394 views
この記事は最終更新から 2426日 が経過しています。
以下の4点を通る滑らかなそれっぽい曲線を描きたい。
(x,y)=(-2,4),(-1,1),(1,5),(2,1)
この4点を直線で結んでみる。
import numpy as np import matplotlib.pyplot as plt x = np.array([-2,-1,1,2],dtype='float32') y = np.array([4,1,5,1], dtype='float32') plt.plot(x, y) plt.show()
この4点のX軸上の両端を0.1ステップで40分割し、各X座標に対応するY座標を スプライン補間 で求める。
import scipy.interpolate xn = np.arange(-2.0, 2.1, 0.1) rp = scipy.interpolate.splrep(x, y, s=0) yn = scipy.interpolate.splev(xn, rp, der=0) plt.plot(x, y) plt.plot(xn, yn) plt.show()
P.S.
スプライン補間は3次元でも使える。
アクセス数(直近7日): ※試験運用中、BOT除外簡易実装済2026-06-10: 0回 2026-06-09: 0回 2026-06-08: 1回 2026-06-07: 1回 2026-06-06: 0回 2026-06-05: 2回 2026-06-04: 4回