Plotさせたグラフ​から、Xの値を指定し​てYの値を知りたい

54 ビュー (過去 30 日間)
Kazu Ari
Kazu Ari 2021 年 7 月 5 日
コメント済み: Kazu Ari 2021 年 7 月 6 日
あるデータからXになる1X1行列、Yになる1X1行列を指定してグラフをPlotしています。
(Plotしたグラフからでなくとも良いのですが)Xの値を指定してYの値を知ることは出来ますか?
Xの行列に指定した値があるとは限りません。
簡単に知るコマンドがあれば良いのですが。
宜しくお願いします。

採用された回答

Shunichi Kusano
Shunichi Kusano 2021 年 7 月 5 日
ご質問の意図とは違うかもしれませんが、指定した値があるかは限らない、ということですのでinterp1関数が適当かと思いました。
yq = interp1(x,y,xq);
と使います。x,yはお手持ちのデータ(様々なxに対するyの値、それぞれ同じサイズのベクトル)、xqにおけるyの値yqを返してくれます。
% 使い方の例
x = [1 2 3 4];
y = [5 6 7 8];
yq = interp1(x,y,1.5)
yq = 5.5000
  1 件のコメント
Kazu Ari
Kazu Ari 2021 年 7 月 6 日
ご教示ありがとうございます。
この方法で実現できました。

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

その他の回答 (2 件)

Hernia Baby
Hernia Baby 2021 年 7 月 5 日
編集済み: Hernia Baby 2021 年 7 月 5 日
indexを抽出するのはいかがですか? X=aのときのYを出力する場合
if true
Y(X==a)
end
  2 件のコメント
Kazu Ari
Kazu Ari 2021 年 7 月 5 日
ご教示ありがとうございます。
残念ながらデータにある値だけしか判らないようでした。

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


Atsushi Ueno
Atsushi Ueno 2021 年 7 月 5 日
>(Plotしたグラフからでなくとも良いのですが)Xの値を指定してYの値を知ることは出来ますか?
コマンドについては既に回答が出ていますが、Plotしたグラフからでも出来ます。
プロット画面のツールメニューから「基本的な近似」を選び各種補間を実施した後グラフ上をクリックすると、任意のXの値を指定してYの値を知ることが出来ます。操作は添付図の通りGUIで直感的に出来ます。既に出ている回答を含め、あらゆる手段があります。
  1 件のコメント
Kazu Ari
Kazu Ari 2021 年 7 月 6 日
ご教示ありがとうございます。
この方法だと、複雑なグラフでなければ*.figファイルのデータからも内挿できるのですね。
大変参考になりました。

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

カテゴリ

Find more on グラフィックス パフォーマンス in Help Center and File Exchange

製品


リリース

R2020a

Community Treasure Hunt

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

Start Hunting!