MATLAB là ngôn từ lập trình, do công ty Math
Works thiết kế. Tuy vậy được cải cách và phát triển như một ngữ điệu lập trình toán học tập giúp người tiêu dùng tiếp cận với đại số cao cấp và giải pháp xử lý hình ảnh, MATLAB cũng rất được đông đảo những nhà khoa học, kĩ sư và lập trình viên trong lĩnh vực xử lý hình hình ảnh và áp dụng trí tuệ tự tạo sử dụng. MATLAB có thể chấp nhận được tính toán số cùng với ma trận, vẽ vật thị hàm số tuyệt biểu đồ dùng thông tin, tiến hành thuật toán, tạo những giao diện người tiêu dùng và link với phần nhiều chương trình máy tính xách tay viết trên nhiều ngôn từ lập trình khác.MATLAB được sử dụng trong nhiều lĩnh vực nghề , các lĩnh vực khác nhau , chính vì vậy mà các hàm trong MATLAB cũng tương đối nhiêu . Tiếp sau đây mình sẽ ra mắt một vài ba hàm về đồ vật thị đơn giản và thường dùng trong MATLAB

1 ) Hàm Plot - Vẽ những điểm và con đường trong mặt phẳng(2D)

Phần lớn những câu lệnh để vẽ đồ thị trong mặt phẳng phần đông là lệnh plot. Lệnh plot vẽ đồ vật thị của một mảng dữ liệu trong một hệ trục tương thích và nối các điểm bởi đường thẳng.

Bạn đang xem: Vẽ nhiều đồ thị trong matlab

Ví dụ :

x=linspace(0,2*pi,30); // Hàm linspace là đem 30 điểm giải pháp đều nhau trong tầm từ 0 -> 2piy=sin(x);plot(x,y);

Đồ thị cảm nhận được hiển thi trên hành lang cửa số figure
*
Chúng ta cũng rất có thể vẽ các đồ thị bằng cách thêm

z=cos(x);plot(x,y,x,z);

Nếu biến hóa trật tự những đối số thứ thị đã xoay một góc 90

plot(y,x,z,x);**

MATLAB khoác định đường vẽ là đường liền, không tấn công dấu, màu xanh da trời.Ta gồm thể biến hóa kiểu đường vẽ và ghi lại lên vật thị bằng cách đưa vào một trong những đối số sản phẩm ba. Các đối số tùy chọn này là 1 trong xâu kí tự, có thể chứa một hoặc nhiều hơn thế theo bảng dưới đây.

Kí tự
Màu
Kí tự
Đánh dấu
Kí tự
Kiểu nét Vẽ
bxanh da trời.chấm-nét liền
gxanh lá câyovòng tròn:nét chấm
rđỏxdấu x-.nét gạch ốp - chấm
cxanh da trời nhạt+dấu +--nét đứt
mđỏ tím*dấu hoa thị-nét liền
yvàngshình vuông
kđendhình thoi
wtrắng^tam giác hướng xuống
vtam giác phía lên
tam giác hướng trái
vpsao năm cánh
hsao sáu cánh
Ví dụ:

plot(x,y,"m*",x,y,"b--")

*
Ðộ rộng lớn của mặt đường vẽ (lines) được khẳng định kèm với diễn tả Linewidth trong lệnh plot. Ðộ rộng con đường vẽ được khoác định là 0.5 point ~ 1/72 inch.Chiều cao của dấu (marker) được khẳng định kèm với diễn đạt Markersize trong lệnh plot. độ cao của dấu được mặc định là 6 point.

Ví dụ:

plot(x,y,"p-","linewidth",4,"markersize",6)

Lệnh grid on đang thêm con đường lưới vào đồ vật thị hiện nay tại. Lệnh grid off xóa khỏi các nét này.Ta có thể đưa tên trục x, y và tên của đồ dùng thị vào hình vẽ nhờ các lệnh xlabel và ylabel. Lệnh title sẽ tiếp tế đồ thị tiêu đề sinh hoạt đỉnh.Dòng ghi chú được đưa vào đồ dùng thị nhờ vào hàm legend. Trong legend thì màu cùng kiểu của mỗi một số loại đường cân xứng với các đường kia trên trang bị thị.

Ví dụ:

x=linspace(0,2*pi,30);y=sin(x);z=cos(x); plot(x,y,"mx-",x,z,"bp--")grid onxlabel("x")ylabel("y")title("do thi đam mê sin va cos")legend ("y = sinx","z =cosx")

*
Ta rất có thể thêm đường nét vẽ vào vật dụng thị đã gồm sẵn bằng cách dùng lệnh hold. Khi dùng lệnh hold on, MATLAB không vứt đi hệ trục đang tồn tại trong lúc lệnh plot mới đang được thực hiện, nạm vào đó, nó thêm mặt đường cong mới vào hệ trục hiện tại tại.Tuy nhiên, nếu tài liệu không phù hợp hệ trục tọa độ cũ, thì trục được chia lại. Sử dụng lệnh hold off sẽ bỏ đi cửa sổ figure hiện tại và chũm vào bởi một trang bị thị mới.Lệnh hold không tồn tại đối số sẽ bật và tắt chức năng của chế độ thiết lập hold trước đó

Ví dụ

x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y);

Hình vẽ sẽ hiển thị trên cửa sổ figure

hold onplot(x,z,"m")

Sẽ vẽ thêm một đồ thị khác vào cùng cửa sổ figure

hold off

Lệnh subplot(m,n,p) chia hành lang cửa số hiện trên thành một ma trận m x n khoảng tầm để vẽ vật dụng thị, với chọn phường là cửa sổ hoạt động. Các đồ thị trấn phần được đặt số từ trái qua phải, từ trên xuống dưới, tiếp nối đến hàng thứ hai
Ví dụ:

subplot(2,2,1)plot(x,y)subplot(2,2,2)plot(y,x)subplot(2,2,3)plot(x,z)subplot(2,2,4)plot(z,x)

*

2) Hàm plot3 - Vẽ điểm và đường trong ko gian

Hàm plot3 cho phép vẽ các điểm và mặt đường trong không gian. Ngoài việc có thêm trục z, cách áp dụng hàm này giống như cách thực hiện hàm plot.View(): a là góc vị trí tính bằng độ trái hướng kim đồng hồ thời trang từ phía âm của trục y. Cực hiếm mặc định của a là -37.5 độ. B là ánh mắt tính bằng độ xuống mặt phẳng x, y. Quý giá mặc định của b là 30 độ. Khi chuyển đổi các quý giá a với b sẽ nhìn được mẫu vẽ dưới các góc độ khác nhau.

Ví dụ :

t=linspace(0,10*pi);subplot(1,2,1);plot3(sin(t),cos(t),t);xlabel("sint");ylabel("cost");title("helix");subplot(1,2,2);plot3(sin(t),cos(t),t);view(<10,35>);xlabel("sint");ylabel("cost");title("helix")

*

3) các hàm vẽ loglog, semilogx với semilogy vẽ những đường trong mặt phẳng

loglog: tương tự như như plot mà lại thang chia là logarithm cho tất cả hai trục.semilogx: tương tự như như plot tuy vậy thang phân tách của trục x là logarithm còn thang phân tách trục y là tuyến đường tính.semilogy: tựa như như plot dẫu vậy thang phân tách của trục y là logarithm còn thang phân tách của trục x là tuyến đường tính.
*
*
MATLAB không tồn tại các hàm vẽ tương xứng với loglog, semilogx, semilogy trong ko gian.Vì vậy, muốn vẽ cùng với hệ tọa độ logarithm trong không gian 3D, ta phải sử dụng hàm plot3.Chế độ con đường tính luôn luôn được khoác định. Ðể biến hóa tỷ lệ trên những trục sang xác suất logarithm, ta cần sử dụng lệnh:set(gca,’Xscale’,’log’)

4) Pie Chart

Ðể vẽ đồ gia dụng thị bánh trong mặt phẳng ta dùng hàm pie, còn mong muốn vẽ trong ko gian, ta cần sử dụng hàm pie3. Với cú pháp pie(V) .Trong đó V là vectơ chứa các phần tử được biểu thị trên thiết bị thị bánh.Thứ tự phân chia trên đồ thị bánh ngược hướng kim đồng hồ
Muốn tách bóc phần chia nào đó thoát ra khỏi đồ thị thì ta cấp dưỡng hàm pie một vectơ nữa gồm cùng kích cỡ với vectơ được diễn tả ở trên. Bộ phận của vectơ này khớp ứng với phần cần tách bóc ra khỏi vật thị thì ta mang đến giá trị khác 0, phần tử tương ứng cùng với phần không tách bóc ra ta cho giá trị bởi 0.

Ví dụ :Trong một sản phẩm hoàn thiện bao gồm 5 chi tiết của phân xưởng A, 12 cụ thể của phân xưởng B, 15 cụ thể của phân xưởng C với 20 cụ thể của phân xưởng D. Ta diễn đạt số phần trăm cụ thể của từng phân xưởng trong thành phầm hoàn thiện kia trên thiết bị thị bánh bởi hàm pie như sau:

subplot(2,1,1)pie(<5 12 15 20>)subplot(2,1,2)pie(<5 12 15 20>,<0 0 0 1>)pie(<5 12 15 20>,"xuong A","xuong B","xuong C","xuong D")

*

5) Đồ thị cột - Bar chart

Hàm bar với bar3 có thể chấp nhận được vẽ trang bị thị trong khía cạnh phẳng với trong không gian.Hàm barh cùng hàm barh3 có thể chấp nhận được vẽ trang bị thị cột nằm theo chiều ngang trong mặt phẳng với trong không gian.

Cú pháp : bar(Vx, Vy, kích thước)Ví dụ: Vẽ thiết bị thị cột với các số liệu:| X | Y || -------- | -------- || 2 | 7.5 || 3 | 5.2 || 4 | 3 |

bar(<2 3 4>,<7.5 5.2 3>,0.4)

*

Nếu ta không chuyển vào các giá trị của X, nghĩa là trong hàm bar vừa sử dụng ta vứt <2 3 4>, thì MATLAB vẫn mặc định các giá trị của X là <1 2 3>. Trong trường đúng theo Vy là ma trận thì số đội cột chủ yếu bằng kích thước của vectơ Vx.

Ví dụ: bộc lộ đồ thị cột với các số liệu sau:| X | Y || -------- | -------- || 1 | 7.5 || | 6 || | 4 || 3 | 5.2 || | 3 || | 5 |

bar(<1 3>,<7.5 6 4;5.2 3 5>,0.4)

*

6)Vẽ các mặt xuất phát từ một ma trận bằng những lệnh mesh, meshz, meshc,waterfall

MATLAB định nghĩa bề mặt lưới bằng những điểm theo phía trục z ở trên phố kẻ ô hình vuông vắn trên mặt phẳng x - y. Nó tạo nên lên mẫu mã một thiết bị thị bằng cách ghép những điểm lân cận với những đường thẳng. Kết quả là nó trông như 1 mạng lưới tiến công cá với những mắc lưới là những điểm dữ liệu. Đồ thị lưới này thường xuyên được thực hiện để quan liêu sát đông đảo ma trận lớn hoặc vẽ phần nhiều hàm gồm hai biến.Bước đầu tiên là đưa ra đồ thị lưới của hàm hai biến chuyển z = f(x,y), tương ứng với ma trận X và Y chứa những hàng và các cột lặp đi lặp lại, MATLAB cung ứng hàm meshgrid cho mục tiêu này: = meshgrid (x,y): sinh sản một ma trận X, mà những hàng của chính nó là bạn dạng sao của vetơ x, cùng ma trận Y có các cột của chính nó là bạn dạng sao của vectơ y. Cặp ma trận này kế tiếp được sử dụng để ước lượng hàm nhị biến áp dụng đặc giám sát và đo lường học về mảng của MATLAB.

Để vẽ bề mặt ta sử dụng các hàm:mesh (X,Y,Z): nối các điểm cùng với nhau vào một lưới chữ nhật.meshc (X,Y,Z): vẽ các đường contour bên dưới đồ thị.

Xem thêm: Hướng dẫn lắp mạch khuếch đại âm thanh dùng ic tda2003 ic khuếch đại âm thanh

meshz (X,Y,Z): vẽ các đường thẳng đứng viền quanh đồ dùng thị.waterfall X,Y,Z): vẽ phương diện với cảm giác như thác đổ.Ví dụ: Vẽ mặt xác định bởi phương trình: z(x, y)xe^(-x^2) ^(-y^2)

x=-2:0.5:2;y=-2:1:2;=meshgrid(x,y)Z=X.*exp(-X.^2-Y.^2)subplot(1,2,1)mesh(X,Y,Z)xlabel("x")ylabel("y")zlabel("z")title("ve mat voi lenh mesh")subplot(1,2,2)meshc(X,Y,Z)xlabel("x")ylabel("y")zlabel("z")title("ve mat voi lenh meshc")

*
*

Vẽ những mặt được sơn bóng từ 1 ma trận bằng các lệnh surf, surfc
Lệnh surfc (X,Y,Z): vẽ mặt có các đườn contour phía dưới.Lệnh surfl (X,Y,Z,s): vẽ mặt bao gồm bóng sáng. Đối số s xác triết lý của mối cung cấp sáng trên bề mặt vẽ. S là một trong vectơ tuỳ lựa chọn trong hệ toạ độ decac hay trong toạ độ cầu. Còn nếu không khai làm giá trị mặc định của s là 45o theo hướng kim đồng hồ từ vị trí fan quan sát.Khi vẽ thiết bị thị ta bao gồm thể biến hóa một số điểm sáng của thứ thị như tỉ lệ trên những trục, giá trị giới hạn của những trục, màu và kiểu đường cong đồ thị, hiển thị legend…ngay trên figure bằng cách vào menu tools rồi vào mục axes properties, line properties tuyệt show legend…Ví dụ

x=-2:0.5:2;y=-2:1:2;=meshgrid(x,y);Z=X.*exp(-X.^2-Y.^2);surf(X,Y,Z)colormap(hot)

Ta hoàn toàn có thể tạo những lưới hơn để sở hữu một phương diện mịn hơn:

x=-2:0.2:2;y=-2:0.4:2;=meshgrid(x,y);Z=X.*exp(-X.^2-Y.^2);surf(X,Y,Z)colormap(cool)

x = 0:0.05:(20-4);%Tao với x voi cac phan tu tu 0 den 16 %moi phan tu cach nhau 0.05y = cos(x)-2*sin(x);%Tao có yplot(x,y,"bo:","Line
Width",3,"Marker
Size",5) %Ve vị thi tu cac gia tri trong mang x va y, nét vẽ: width 3, danh dau hinh tron kích thước 5, mau xanh lam title("Do thi hinh sin"); %ten vì thixlabel("Thoi gian"); %chu thich truc xylabel("Gia tri"); %chu thich truc ygrid on %bat luoi

*
1.2. Ví dụ 2: Vẽ 2 trang bị thị trong một trục tọa độ

x = 0:pi/100:(4+1)*pi;%Tao mang x voi cac phan tu tu 0 den 5*pi %moi phan tu cach nhau pi*100y = sin(x);%Tao mang yz=cos(x);%Tao sở hữu zplot(x,z,"y",x,y,"g","Line
Style","-.","Line
Width",3)%Ve bởi vì thi tu cac gia tri trong với x va z voi mau vang va % bởi thi tu cac gia tri trong có x va y voi mau xanh la vào cung 1 cua so % net -. Vì chưng rong 3grid %thay doi trang thai luoixlabel("X"),ylabel("Y") %chu thich truc x, ytitle("Graph sin(x) và cos(x)") %ten vày thiaxis(<0 20 -1.2 1.2>); %tao truc toa do hien thi

*

1.3. Lấy ví dụ như 3: Vẽ 3 vật thị trong 1 trục tọa độ

x = 1:0.5:20-4;%Tao với x voi cac phan tu tu 1 den 16 %moi phan tu cach nhau 0.5y1 = sin(x)+cos(x);%Tao với y1y2 = sin(x)-2*cos(x);%tao sở hữu y2y3 = sin(x)+2*cos(x);%tao sở hữu y3plot(x,y1,"r+:",x,y2,"g*-",x,y3,"yo-") %Ve vì chưng thi tu cac gia tri trong mang x va y1 voi mau do, net ve :, danh dau + va %Ve vị thi tu cac gia tri trong sở hữu x va y2 voi mau xanh la, net ve -, danh dau * va % Ve do thi tu cac gia tri trong mang x va y3 voi mau vang, net ve -, danh dau o%Trong cung 1 cua sogrid on %bat luoi

*
1.4. Ví dụ 4: Vẽ các đồ thị trong một cửa sổ

clear all %xoa bienx=0:0.01:(4+1)*pi;%Tao mang x voi cac phan tu tu 0 den 5*pi %moi phan tu cach nhau 0.01 y1=sin(x); %Tao có y1 y2=cos(x);%Tao sở hữu y2y3=sin(x)+cos(x);%Tao có y3 subplot(3,1,1)%chia cua so thanh ma tran 3 x 1 vùng de ve vị thi, va chon cua so 1 de veplot(x,y3,"g") %Ve do thi tu cac gia tri trong có x va y3, net ve mau xanh lagrid on; %Bat luoi subplot(3,1,2)%chia cua so thanh ma tran 3 x 1 vùng de ve vị thi, va chon cua so 2 de veplot(x,y2,"y") %Ve bởi thi tu cac gia tri trong sở hữu x va y2, net ve mau vanggrid on; %Bat luoi subplot(3,1,3)%chia cua so thanh ma tran 3 x 1 vùng de ve vày thi, va chon cua so 3 de veplot(x,y1,"b") %Ve vì chưng thi tu cac gia tri trong với x va y1, net ve mau xanh lamgrid on; %Bat luoi

*
1.5. Lấy ví dụ 5: Vẽ những đồ thị trong 1 cửa sổ

x=0:0.01:(4+1)*pi;%Tao có x voi cac phan tu tu 0 den 5*pi %moi phan tu cach nhau 0.01 y1=sin(x); %Tao có y1 y2=cos(x);%Tao có y2y3=tan(x);%Tao với y3y4=sin(x).*sin(x); subplot(2,2,1)%chia cua so thanh ma tran 2 x 2 vùng de ve vì thi, va chon cua so 1 de veplot(x,y1,"b+:","Line
Width",2,"Marker
Size",5) %Ve vì chưng thi tu cac gia tri trong với x va y1, net ve sầu : do rong 2, danh dau + kích thước 5, mau xanh lamgrid on; %Bat luoi subplot(2,2,2)%chia cua so thanh ma tran 2 x 2 vùng de ve bởi vì thi, va chon cua so 2 de veplot(x,y2,"r+:","Line
Width",2,"Marker
Size",5) %Ve bởi thi tu cac gia tri trong với x va y2, net ve : vì rong 2, danh dau + kích cỡ 5, mau dogrid on; %Bat luoi subplot(2,2,3)%chia cua so thanh ma tran 2 x 2 vùng de ve vì chưng thi, va chon cua so 3 de veplot(x,y3,"g+:","Line
Width",2,"Marker
Size",2) %Ve do thi tu cac gia tri trong mang x va y3, net ve sầu : do rong 2, danh dau + form size 2, mau xanh lagrid on; %Bat luoi subplot(2,2,4)%chia cua so thanh ma tran 2 x 2 vùng de ve vì thi, va chon cua so 4 de veplot(x,y4,"y+:","Line
Width",2,"Marker
Size",5) %Ve vì thi tu cac gia tri trong mang x va y4, net ve : bởi vì rong 2, danh dau + kích thước 5, mau vanggrid on; %Bat luoi

*
2. Đồ thị thanh

x = 1:12; %Tao với x voi cac phan tu tu 1 den 12y=<8 1 1 5 0 5 5 2 0 2 2 4>; %Tao với ybar(x,y,0.5,"r");% ve do thi thanh tu gia tri x y, mau do, vì chưng rong 0. بينجو اون لاين 5grid %thay doi trang bầu luoixlabel("Thang") %Chu thich truc xylabel("Ma so") %chu thich truc ytitle("Nguyen Van Khuong") %ten bởi vì thi

*
3. Đồ thị tròn

%pie plotx=<1 8 1 1 5 0 5 5 2 0 2 2 4>; %Tao với xtach = <0 0 0 0 0 0 0 0 0 0 0 1 1> %Tao với tach de cat vì chưng thi tron%o cac vi tri tuong ung voi so 1, la 2 vi tri cuoi trong có x pie(x,tach) %Ve vì chưng thi tron voi cac vi tri cát trong với tach

*
4. Đồ thị trong tọa độ cực

%polar plott = 0:0.01:(4+1)*pi;%Tao với t voi cac phan tu tu 0 den 5*pi %moi phan tu cach nhau 0.01polar(t,abs(sin((4+1)*t).*cos((4+1)*t))) %Ve vày thi toa bởi vì cuc tu gia tri t va yêu thích abs(sin((4+1)*t).*cos((4+1)*t))

*

4. Đồ thị 3D

4.1. Đồ thị con đường 3D

z = 0:pi/50:(4+1)*pi;%Tao sở hữu z voi cac phan tu tu 0 den 5*pi %moi phan tu cach nhau pi/50x=sin(z); %Tao sở hữu xy=cos(z); %Tao với yplot3(x,y,z,"Line
Width",5,"Line
Style","-","Color","b") %Ve bởi thi 3 chiều tu cac gia tri trong mang x,y,z, net ve - vày rong 5, mau xanh lamgrid; %thay doi trang bầu luoi

*
4.2. Đồ thị gồm đường contour

x = -1:0.05:1;%Tao sở hữu x voi cac phan tu tu -1 den 1 %moi phan tu cach nhau 0.05y=x; %Tao sở hữu y = meshgrid(x,y); %dinh luoi vez = x.^(3+4)+y.^(2+4); %Tao sở hữu zsurfc(x,y,z,"Edge
Color","b") %Tao be mat 3 chieu teo duong contour ben duoi

*
4.3. Đồ thị mesh, surf

= meshgrid(-8:0.5:8); %dinh luoi vez = sqrt(x.^(2+4)+y.^(2+4)); %Tao có z subplot(2,2,1); %chia cua so thanh ma tran 2 x 2 vùng de ve bởi thi, va chon cua so 1 de vesurf(x,y,z,"Edge
Color","r"),title("Ham surf"); %Tao be mat 3 chieu va ten vị thicolormap hot %chon kieu khổng lồ mau cho vị thishading interp %tao bong đến be mat subplot(2,2,2);%chia cua so thanh ma tran 2 x 2 khoang de ve vị thi, va chon cua so 2 de vemesh(x,y,z,"Edge
Color","b"),title("Ham mesh"); %Ve mat luoi 3d va them ten vì chưng thisubplot(2,2,3);%chia cua so thanh ma tran 2 x 2 khoang de ve vị thi, va chon cua so 3 de vesurfc(x,y,z,"Edge
Color","y"),title("Ham surf");%Tao be mat 3 chieu co duong contour va ten vì thishading flat %Tao bong be mat kieu flatsubplot(2,2,4);%chia cua so thanh ma tran 2 x 2 vùng de ve vì chưng thi, va chon cua so 4 de vemesh(x,y,z,"Edge
Color","c"),title("Ham mesh");%Ve mat luoi 3d va them ten vị thishading flat %Tao bong be mat kieu flat

*
4.4. Vẽ hình cầu

%ve hinh cau tam (x=2, y=2, z=4) 3so cuoi msv = sphere(50); %Tao 3 với x,y,z la toa do cac diem tren hinh causubplot(1,2,1) %chia cua so thanh ma tran 1 x 2 vùng de ve bởi thi, va chon cua so 1 de vesurf(x+2,y+2,z+4) %Tao be mat 3dsubplot(1,2,2) %chia cua so thanh ma tran 1 x 2 vùng de ve vày thi, va chon cua so 2 de vemesh(x+2,y+2,z+4)%Ve mat luoi 3d

*
4.5. Vẽ hình trụ

subplot(1,2,1) %chia cua so thanh ma tran 1 x 2 khoang de ve bởi thi, va chon cua so 1 de vecylinder(<1 8 1 1 5 1 5>) %Ve hinh trusubplot(1,2,2) %chia cua so thanh ma tran 1 x 2 khoang de ve do thi, va chon cua so 2 de vecylinder(<5 2 1 2 2 4>) %Ve hinh tru

*