matlab 繪製函式 y = 7x / (8-7*x) 的圖形
阿新 • • 發佈:2018-12-12
任務:繪製函式 y = 7x / (8-7*x) 的圖形
備註:程式碼表示形式為VBScript
最終正確形式:
clc;
x = 0:0.01:1;
y = (7*x)./(8-7*x)
plot(x,y)
xlabel('向量化百分比');
ylabel('加速比');
axis([0 1 0 7]);
grid on
錯誤形式1:x = 0:1;
% matlab程式 clc; x = 0:1; y1 = 7*x y2 = 8-7*x y = y1 ./ y2 %axis([xmin xmax ymin ymax]) %xmin是x最小,xmax是x最大,ymin,ymax類似 subplot(311);plot(x,y1) subplot(312);plot(x,y2) subplot(313);plot(x,y) axis([0 1 0 7]); grid on %繪製網格線
結果如下:
分析:這種形式下x是一個1*2矩陣,只有兩個元素,分別是0和1;所以繪製出的曲線直接將x為0和1表示的點進行連線,故而是一條直線
錯誤形式2:x = rand(3);
% matlab程式 clc; x = rand(3); y1 = 7*x y2 = 8-7*x y = y1 ./ y2 %axis([xmin xmax ymin ymax]) %xmin是x最小,xmax是x最大,ymin,ymax類似 subplot(311);plot(x,y1) subplot(312);plot(x,y2) subplot(313);plot(x,y) axis([0 1 0 7]); grid on
分析:rand(a,b):產生a行b列由在(0, 1)之間均勻分佈的隨機陣列成的陣列。
正確形式:x = 0:0.01:1;
% matlab程式
clc;
x = 0:0.01:1;
y1 = 7*x
y2 = 8-7*x
y = y1 ./ y2
%axis([xmin xmax ymin ymax]) %xmin是x最小,xmax是x最大,ymin,ymax類似
subplot(311);plot(x,y1)
subplot(312);plot(x,y2)
subplot(313);plot(x,y)
axis([0 1 0 7]);
grid on