Re: [問題] 有關使用for 迴圈計算結果後繪圖的問題已回收

看板MATLAB作者時間16年前 (2009/06/20 23:18), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串3/3 (看更多)
※ 引述《johnny4003 ()》之銘言: : ※ 引述《johnny4003 ()》之銘言: : : 各位高手 對不起請教一下 用For來計算之後繪圖的問題 : : 下列是寫好的方程式,想做出x-y的圖 : : 可是問題是,在for和end之間的y可以計算出對應x的值 : : 但是,end之後的y卻都是x=20的值 : : 所以,出來的圖都是只有一個點....ORZ : : 可否提示我一下..感謝感謝... : : clc : : clear all : : w=20; % Base size of QDs : : L=10; % Spacer thickness : : for x=0:1:20 : : D=(x+w)/L; : : S=(x-w)/L; : : y1=D.*(2+D^2).*((1+D.^2)^(-3/2)); : : y2=S.*(2+S^2).*((1+S.^2)^(-3/2)); : : y(1+x)=-(y1-y2) <------修改項 : : end : : x=0:1:20 <-----增加項 : : plot(x,y,'-bo') : : hold off : 謝謝你....經由你的建議解決了y對應x的值 : 不過 所繪出的圖是x=20然後y隨著x變化的直線 : 後來 我想了一下 再加入 x=0:1:20 : 結果就出來了...真的謝謝你 : 對了 可否跟我說一下為什麼要改成 y(1+x)=-(y1-y2)嗎?! : 我想了一下還是想不出來 .....ORZ 各位高手 再請教一下 若要找出y=0時,x的值...需要用什麼語法呢?! 我試過了 polyfit加上polyval 做不出來....> <" 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.125.15

06/21 00:13, , 1F
x(find(y==0))
06/21 00:13, 1F

06/21 01:17, , 2F
不用find
06/21 01:17, 2F

06/21 08:37, , 3F
謝謝...我想個都試過了...會出現錯誤的訊息..
06/21 08:37, 3F
文章代碼(AID): #1AFFsrwh (MATLAB)
文章代碼(AID): #1AFFsrwh (MATLAB)