Issue: Matrix Dimensions Must Agree
显示 更早的评论
%PV=NRT
T1=273;
T2=293;
T3=313;
P=100:50:300; %kPa
R=8.314; %Ideal gas constant J*K^-1*mol^-1
n=1;
Volume1=n*R*T1/P;
Volume2=n*R*T2/P;
Volume3=n*R*T3/P;
figure(1)
plot(Volume1,P)
xlabel('Pressure [kPA]')
ylabel('Volume [m^3]')
figure(2)
plot(Volume2,P)
xlabel('Pressure [kPA]')
ylabel('Volume [m^3]')
figure(3)
plot(Volume3,P)
xlabel('Pressure [kPa]')
ylabel('Volume [m^3]')
回答(1 个)
James Tursa
2017-9-5
编辑:James Tursa
2017-9-5
Use element-wise operator ./ (with the dot) instead of the matrix operator /
E.g.,
Volume1=n*R*T1./P;
Volume2=n*R*T2./P;
Volume3=n*R*T3./P;
2 个评论
Brandon Mello
2017-9-5
James Tursa
2017-9-5
编辑:James Tursa
2017-9-5
You've got the pressure and volume arguments reversed in your plot calls. The first one is the x-axis and the second one is the y-axis. So this line:
plot(Volume1,P)
should be this instead:
plot(P,Volume1)
Same for Volume2 and Volume3.
And if you want to change the tick spacing on the x-axis, you could do something like this for each figure:
set(gca,'Xtick',P);
Finally, I typically use this to make the plots more readable:
grid on
类别
在 帮助中心 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!