フィルターのクリア

サンプリング数の少ない場合のグラフ描画

4 ビュー (過去 30 日間)
Ochi Kai
Ochi Kai 2022 年 10 月 12 日
コメント済み: Ochi Kai 2022 年 10 月 13 日
例えば変数
A = [0, 0, 40, 42, 40, 28, 20, 19, 23, 0, 0];
time = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
があり、Aは何かの信号、timeは時間として10秒分のデータを取得したとしています。
plot(time,A,'-r','LineWidth',1.2);
を実行するとグラフは表示できますが、サンプリング数が少ないため、かくかくしたグラフとなってしまいます。
B = smoothdata(A);
plot(time,B,'-o','LineWidth',1.2);grid on;
smoothdata関数等も使いましたが、あまりうまくいきません。何か良い方法はないでしょうか?
ご教授お願いいたします。

採用された回答

Hernia Baby
Hernia Baby 2022 年 10 月 12 日
resampleもしくはinterp1を使用してください。
A = [0, 0, 40, 42, 40, 28, 20, 19, 23, 0, 0];
time = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
tq = linspace(0,10,1000);
B = interp1(time,A,tq,'spline');
plot(time,A,'ko','LineWidth',1.2);hold on;grid on;
plot(tq,B,':','LineWidth',1);
legend({'original','interp'})
  1 件のコメント
Ochi Kai
Ochi Kai 2022 年 10 月 13 日
本当にありがとうございます。大変勉強になりました。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNetworks についてさらに検索

タグ

製品


リリース

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!