matlab で最適な線を使用して散布図を作成しようとしています。散布図は scatter(x1,x2) または scatterplot(x1,x2) のいずれかを使用して取得できますが、基本的なフィッティング オプションはシャドウ アウトされ、lsline が返されます。エラー「許可された線種が見つかりません。何もしていない」
どんな助けでも素晴らしいでしょう、
ありがとう、ジョン。
matlab で最適な線を使用して散布図を作成しようとしています。散布図は scatter(x1,x2) または scatterplot(x1,x2) のいずれかを使用して取得できますが、基本的なフィッティング オプションはシャドウ アウトされ、lsline が返されます。エラー「許可された線種が見つかりません。何もしていない」
どんな助けでも素晴らしいでしょう、
ありがとう、ジョン。
lsline
は統計ツールボックスでのみ利用可能ですが、統計ツールボックスはありますか? より一般的な解決策は、 を使用することpolyfit
です。
polyfit
データに線を合わせるために使用する必要があります。にいくつかのデータがy
あり、 に対応するドメイン値があるとしますx
(つまりy = f(x)
、任意の に近似するデータf
がある)。次のように線形曲線を当てはめることができます。
p = polyfit(x,y,1); % p returns 2 coefficients fitting r = a_1 * x + a_2
r = p(1) .* x + p(2); % compute a new vector r that has matching datapoints in x
% now plot both the points in y and the curve fit in r
plot(x, y, 'x');
hold on;
plot(x, r, '-');
hold off;
任意の多項式をデータに当てはめたい場合は、polyfit の最後のパラメータを曲線当てはめの次元に変更することで実行できることに注意してください。この次元を と呼ぶと仮定すると、 の推定値に適合する多項式を表す の係数がd
返されます。d+1
p
f(x)
f(x) = p(1) * x^d + p(2) * x^(d-1) + ... + p(d)*x + p(d+1)
polyval
編集、計算にも使用できるコメントに記載されているようにr
、その構文は次のようになります。
r = polyval(p, x);
複素数の Infs、NaN、および虚数部は、データでは無視されます。
Curve Fitting Tool は柔軟なグラフィカル ユーザー インターフェイスを提供し、曲線と曲面を対話的にデータとビュープロットに適合させることができます。あなたはできる:
複数の近似の作成、プロット、および比較
線形または非線形回帰、補間、局所平滑化回帰、またはカスタム方程式を使用
適合度統計の表示、信頼区間と残差の表示、外れ値の除去、validationdata による適合性の評価
曲面の近似とプロットのためのコードを自動的に生成するか、さらに解析するために近似をワークスペースにエクスポートします