Vẽ nhiều đồ thị trong matlab

     
MATLAB là ngôn từ lập trình, do công ty MathWorks thiết kế. Tuy nhiên được trở nên tân tiến như một ngôn ngữ lập trình toán học tập giúp người sử dụng tiếp cận cùng với đại số cao cấp và giải pháp xử lý hình ảnh, MATLAB cũng được đông đảo những nhà khoa học, kĩ sư cùng lập trình viên trong nghành nghề dịch vụ xử lý hình ảnh và áp dụng trí tuệ nhân 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ẽ đồ dùng thị hàm số xuất xắc biểu đồ vật thông tin, triển khai thuật toán, tạo các giao diện người dùng và liên kết với đầy đủ chương trình máy tính viết bên trên nhiều ngôn từ lập trình khác.MATLAB được sử dụng trong nhiều nghành nghề , các lĩnh vực khác nhau , cũng chính vì vậy mà các hàm trong MATLAB cũng tương đối nhiêu . Dưới đây mình sẽ reviews một vài hàm về thứ thị đơn giản dễ dàng và phổ biến 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ứ thị trong phương diện phẳng hầu như là lệnh plot. Lệnh plot vẽ vật thị của một mảng tài liệu trong một hệ trục thích hợp và nối các điểm bởi đường thẳng.Bạn đang xem: Vẽ thứ thị hàm 2 trở thành trong matlab

Ví dụ :

x=linspace(0,2*pi,30); // Hàm linspace là mang 30 điểm bí quyết đều nhau trong khoảng từ 0 -> 2piy=sin(x);plot(x,y);

Đồ thị nhận được được hiển thi trên cửa sổ figure
*

Chúng ta cũng hoàn toàn có thể vẽ nhiều đồ thị bằng cách thêm

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

Nếu thay đổi trật tự các đối số thứ thị đã xoay một góc 90

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

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

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

Kí tựMàuKí tựĐánh dấuKí tựKiểu đường 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 - 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 phía xuống
vtam giác phía lên
tam giác phía 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 bộc lộ Linewidth vào lệnh plot. Ðộ rộng đường vẽ được mang định là 0.5 point ~ 1/72 inch.Chiều cao của vệt (marker) được xác minh kèm với trình bày Markersize vào 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 đã thêm đường lưới vào đồ gia dụng thị hiện tại. Lệnh grid off xóa sổ các đường nét này.Ta hoàn toàn có thể đưa tên trục x, y với tên của vật dụng thị vào hình mẫu vẽ nhờ các lệnh xlabel và ylabel. Lệnh title sẽ cung ứng đồ thị tiêu đề sinh sống đỉnh.Dòng chú giải được gửi vào đồ gia dụng thị dựa vào hàm legend. Vào legend thì màu với kiểu của mỗi nhiều loại đường phù hợp với các đường đó trên đồ gia dụng 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 đắm say sin va cos")legend ("y = sinx","z =cosx")


*

Ta rất có thể thêm nét vẽ vào đồ dùng thị đã có sẵn bằng phương pháp dùng lệnh hold. Khi dùng lệnh hold on, MATLAB không vứt đi hệ trục vẫn tồn tại trong những khi lệnh plot mới đang được thực hiện, cầm cố vào đó, nó thêm mặt đường cong new vào hệ trục hiện tại.Tuy nhiên, nếu dữ liệu không phù hợp hệ trục tọa độ cũ, thì trục được phân tách lại. Sử dụng lệnh hold off sẽ quăng quật đi hành lang cửa số figure bây giờ và nạm vào bằng một đồ thị mới.Lệnh hold không có đối số sẽ bật và tắt chức năng của chế độ cấu hình 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ẽ chỉ ra trên hành lang cửa số figure

hold onplot(x,z,"m")

Sẽ vẽ thêm một đồ thị khác vào cùng hành lang 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 để vẽ đồ vật thị, và chọn phường là hành lang cửa số hoạt động. Những đồ thành phố phần được đặt số từ trái qua phải, từ bên trên xuống dưới, tiếp nối đến hàng lắp thêm haiVí 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à mặt đường trong ko gian

Hàm plot3 chất nhận được vẽ những điểm và con đường trong không gian. Ngoài vấn đề có thêm trục z, cách áp dụng hàm này giống hệt như cách thực hiện hàm plot.View(): a là góc vị trí tính bằng độ ngược chiều kim đồng hồ đeo tay từ phía âm của trục y. Quý giá mặc định của a là -37.5 độ. B là mắt nhìn tính bởi độ xuống phương diện phẳng x, y. Quý giá mặc định của b là 30 độ. Khi biến đổi các cực hiếm a với b sẽ chú ý được hình vẽ dưới những góc độ khác nhau.

Xem thêm: Gái Xinh Sài Gòn - 100+ Hình Ảnh Hot Girl Sài Gòn

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();xlabel("sint");ylabel("cost");title("helix")


*

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

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

4) Pie Chart

Ðể vẽ đồ dùng thị bánh trong phương diện phẳng ta cần sử dụng hàm pie, còn mong vẽ trong ko gian, ta 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 miêu tả trên đồ vật thị bánh.Thứ tự phân loại trên đồ thị bánh ngược hướng kim đồng hồMuốn bóc phần phân tách nào đó thoát khỏi đồ thị thì ta tiếp tế hàm pie một vectơ nữa gồm cùng size với vectơ được biểu đạt ở trên. Phần tử của vectơ này tương ứng với phần cần tách bóc ra khỏi trang bị thị thì ta mang lại giá trị khác 0, phần tử tương ứng cùng với phần không bóc ra ta đến giá trị bằng 0.

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

subplot(2,1,1)pie()subplot(2,1,2)pie(,)pie(,"xuong A","xuong B","xuong C","xuong D")


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

Hàm bar cùng bar3 cho phép vẽ đồ thị trong phương diện phẳng và trong không gian.Hàm barh với hàm barh3 chất nhận được vẽ vật dụng thị cột nằm ngang trong khía cạnh phẳng cùng trong không gian.

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

bar(,,0.4)


Nếu ta không gửi vào các giá trị của X, tức thị trong hàm bar vừa áp dụng ta quăng quật , thì MATLAB đang mặc định những giá trị của X là . Trong trường hòa hợp Vy là ma trận thì số team cột chủ yếu bằng kích thước của vectơ Vx.

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

bar(,,0.4)


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

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

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 đánh bóng xuất phát từ một ma trận bằng những lệnh surf, surfcLệnh surfc (X,Y,Z): vẽ khía cạnh có những đườ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 kim chỉ nan của mối cung cấp sáng trên mặt phẳng vẽ. S là 1 vectơ tuỳ lựa chọn trong hệ toạ độ decac tốt trong toạ độ cầu. Nếu không khai báo giá trị khoác định của s là 45o theo chiều kim đồng hồ từ vị trí bạn quan sát.Khi vẽ thứ thị ta có thể biến hóa một số đặc điểm của đồ dùng thị như tỉ trọng trên các trục, quý hiếm giới hạn của các trục, màu và kiểu mặt đường cong đồ thị, hiển thị legend…ngay bên trên figure bằng phương pháp vào menu tools rồi vào mục axes properties, line properties giỏi 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 các 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)