2010-10-14 44 views
0

我沒有在一段時間內使用MATLAB,所以我無法弄清楚我在這裏做錯了什麼。試圖繪製兩個列向量

我想繪製(在一張圖上)4種不同溫度的曲線。 V應該在x軸上並且P應該在y軸上。

我在%之後所擁有的只是對我的提醒,與我在劇情中所做的無關。

這是我在我的編輯:

a=3.7E-7; 
b=4.3E-5; 
R=8.314E-6; 
n=1; 

V1_vector=zeros(1,25); 
P1_vector=zeros(1,25); 
T1=400; 
V1=.0000823; 
for n=1:1:25 
    P1=((R*T1)/(V1-b))-(a/(V1.^2)); 
    V1_vector(n)=V1; 
    P1_vector(n)=P1; 
    V1=V1+.001324708;  %V1=0.0332 
    n=n+1; 
end 
P1=P1_vector; 
V1=V1_vector; 

V2_vector=zeros(1,25); 
P2_vector=zeros(1,25); 
T2=350; 
V2=.00007133; 
for n=1:1:25 
    P2=((R*T2)/(V2-b))-(a/(V2.^2)); 
    V2_vector(n)=V2; 
    P2_vector(n)=P2; 
    V2=V2+.0011579468;  %V2=0.02902 
    n=n+1; 
end 
P2=P2_vector; 
V2=V2_vector; 

V3_vector=zeros(1,25); 
P3_vector=zeros(1,25); 
T3=300; 
V3=.00006347; 
for n=1:1:25 
    P3=((R*T3)/(V3-b))-(a/(V3.^2)); 
    V3_vector(n)=V3; 
    P3_vector(n)=P3; 
    V3=V3+.0009906612;  %V3=0.02483 
    n=n+1; 
end 
P3=P3_vector; 
V3=V3_vector; 

V4_vector=zeros(1,25); 
P4_vector=zeros(1,25); 
T4=250; 
V4=.0000577453; 
for n=1:1:25 
    P4=((R*T4)/(V4-b))-(a/(V4.^2)); 
    V4_vector(n)=V4; 
    P4_vector(n)=P4; 
    V4=V4+.000825690188; %V4=0.0207 
    n=n+1; 
end 
P4=P4_vector; 
V4=V4_vector; 

PLOT(V1,P1,V2,P2,V3,P3,V4,P4) 

這是錯誤消息

??? Attempt to execute SCRIPT Plot as a function: 
C:\Users\amy\Documents\MATLAB\Plot.m 

Error in ==> Plot at 73 
PLOT(V1,P1,V2,P2,V3,P3,V4,P4) 

請幫幫我!

回答

0

如果您想繪製點(V1, P1)(V2, P2)等,請在繪製它們之前將這些點放入向量中。嘗試plot([V1, V2, V3, V4],[P1, P2, P3, P4])

+0

這正是我想要做的。我只是用這個,它給了我7塊地塊。我認爲前四個是我要找的,但其他三個是什麼? – Lauren 2010-10-14 01:22:44

+0

我只是想通了。因爲某種原因,這隻能給我我想要的四個圖。[plot] [plot]([V1],[P1],[V2],[P2],[V3],[P3],[V4],[P4]) 謝謝你的幫助! – Lauren 2010-10-14 01:32:54

3

它看起來像你做了一個名爲「Plot.m」,這是什麼被稱爲,而不是matlab「陰謀」例程的文件。

將文件「C:\ Users \ amy \ Documents \ MATLAB \ Plot.m」重命名爲其他內容。

+0

確定我只是重命名的文件,但現在我m得到最後一行的錯誤PLOT(V1,P1,V2,P2,V3,P3,V4,P4) – Lauren 2010-10-14 00:45:09

+0

???對'double'類型的輸入參數未定義函數或方法'PLOT'。 – Lauren 2010-10-14 00:45:52

+0

Matlab區分大小寫。把'PLOT'改成'plot' – FakeDIY 2012-10-29 15:33:26

3

正如@nsanders所指出的那樣,您有一個用戶定義的函數plot.m以相同的名稱遮蓋內置函數。如果有疑問,可以隨時查詢:

>> which plot -all 
C:\Users\amy\Documents\MATLAB\plot.m 
[... a bunch of other overrided versions ...] 
built-in (C:\MATLAB\R2010a\toolbox\matlab\graph2d\plot)   % Shadowed 

此外,MATLAB是大小寫敏感的,所以你應該調用功能plot(小寫字母)