作者liiyihluen (哩共啊!!!)
看板MATLAB
標題[討論] 如何判別條件 來選擇要帶入的函數
時間Mon Nov 4 23:25:07 2019
a = [23 65 14 32 61 72];
b = [1 3 3 4 2 1];
% 有a.b兩矩陣
y1 = 3*a.^2+25*a-32.2;
y2 = 2*a.^2-3.1*a-26;
y3 = 4.06*a.^2-16*a+7;
y4 = -6.79*a.^2-52*a+30.49;
% 有4個函數
% 把b帶入yb,使yb變成上述的4個函數
plot(a, yb, 'o');
% 當b等於某數字時,會對應使用某個yb函數,讓a代入,最後在圖上畫出這六個點。
請問各位前輩,我該如何讓matlab判別b矩陣中的數字會對應哪個函數呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.20.140 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MATLAB/M.1572881112.A.46E.html
1F:推 sppmg: 提示 y(b) 11/06 00:34
謝謝提示,稍微改了一下如下,但仍無法繪出圖
請問還需要修改什麼嗎?
a = [23 65 14 32 61 72];
b = [1 3 3 4 2 1];
% 有a.b兩矩陣
if y(b)==y(1), then y(1) = 3*a.^2+25*a-32.2;
if y(b)==y(2), then y(2) = 2*a.^2-3.1*a-26;
if y(b)==y(3), then y(3) = 4.06*a.^2-16*a+7;
if y(b)==y(4), then y(4) = -6.79*a.^2-52*a+30.49;
% 有4個函數
% 把b帶入y(b),使y(b)變成上述的4個函數
plot(a, y(b), 'o');
% 希望圖面上有6個點,分別是a=23時套用b=1的函數、a=65時套用b=3個函數...以此類推
※ 編輯: liiyihluen (140.116.20.157 臺灣), 11/07/2019 23:29:27
2F:推 sin55688: 初學就自定義雙變數函數吧f(a,b) 11/08 02:30
3F:推 sppmg: 樓上正解,當初發太快忘記a。然後MATLAB if 沒有then 11/09 20:19
4F:→ sppmg: 如果只是簡單繪圖你的應該就可以了,不過建議y另外定義成 11/09 20:21
5F:→ sppmg: function 比較正式。看一下文件說明 function 怎用。 11/09 20:21