You are here
Home > Lập Trình > Tự Học Matlab > Matlab Nâng Cao > Lập Trình GUI > Lập Trình Gui Matlab – Hướng Dẫn Vẽ Đồ Thị Trong Matlab GUI

Lập Trình Gui Matlab – Hướng Dẫn Vẽ Đồ Thị Trong Matlab GUI

huong-dan-ve-do-thi-trong-matlab-gui

Cách Vẽ Đồ Thị Trong Matlab Gui

Đồ thị thì như bạn đã biết nó dùng để hiện thị thông số của một đối tượng nào đó có thể bằng đường thẳng, cong, bậc thang đúng không? Vậy Trong Matlab và cụ thể hơn trong giao diện GUI thì ta sẽ sử dụng như thế nào thì trong bài viết này VuTienIT xin được hướng dẫn bạn cách sử dụng.

huong-dan-ve-do-thi-trong-matlab-gui
huong-dan-ve-do-thi-trong-matlab-gui

| Hướng dẫn vẽ đồ thị trong GUI Matlab

Ở đây cho bạn trực quan thì ta lấy một ví dụ đó là ta sử dụng 2 đối tượng chính đó là Push Button và Axes (Dùng để hiện thị đồ thị). Khi ta nhấn vào Push Button thì sẽ tiến hành hiện thị một đồ thị nào đó nên đối tượng Axes mà ta đã kéo vào GUI. Giao diện thì bạn có thể thiết kế như thế nào cũng được. Quan trọng bạn cần chú đến cách đặt tên Tag của đối tượng đó sao cho phù hợp.

ve-do-thi-trong-gui-matlab
ve-do-thi-trong-gui-matlab

Ở đây VuTienIT sẽ thiết kế một giao diện đơn giản như hình dưới đây.

Ở đây bạn chú ý đó là Push Button có Tag là pushbutton1. Khi bạn thiết kế giao diện xong bạn hãy save (Lưu) lại với tên nào cũng được.

huong-dan-ve-do-thi-trong-matlab-gui
huong-dan-ve-do-thi-trong-matlab-gui

Bây giờ ta sẽ mở đến File .m mà bạn đã lưu trước đó ra để tiến hành viết code để vẽ đồ thị.

Bạn hãy mở đến Function có têndưới đây để viết mã lệnh

function  pushbutton1_Callback(hObject, eventdata, handles)

Trong đó: pushbutton1 có thể là một tên khác (Tag) của đối tượng Push Button

Bây giờ ta sẽ lấy một ví dụ vẽ đồ thị nào đó như sau

– Khai báo một biến t có giá trị chạy từ -pi (3.14…) đến pi với bước nhảy là 0.1. Nghĩa là khoảng cách các điểm sẽ đều nhau là 0.1

t = -pi : 0.1 : pi;

– Lệnh vẽ đồ thị 2D

plot(t, sin(t));

Oke bây giờ bạn quay lại giao diện GUI bấm hình tam giác màu xanh để khởi chạy trương trình nên. Sau đó bạn nhấm vào nút có tên Ve do thi thì lập tức giao diện đồ thị đã được vẽ nên trong đối tượng axes1.

plot-trong-matlab
plot-trong-matlab

Chú thích: Trong GUI thì mặc định nếu bạn chỉ tạo 1 đối tượng là axes thì bạn không cần khai báo khi nhập lênh plot() xem vẽ vào chỗ nào. Nếu từ 2 đối tượng axes thì ta mới cần định danh xem ta vẽ nên axes nào.

Tiếp theo bạn có thể tùy biến giao diện của bạn cho nó chuyên nghiệp hơn thì bạn có thể tìm hiểu các lệnh dưới đây

grid on;  Nếu đang tắt thì sẽ tự động mở và ngược lại (Bật tắt lưới)

Nếu bạn muốn vẽ thêm một đồ thị nữa trên cùng một axes thì bạn cần làm như sau

hold on Giữ lại những gì đã có trên đồ thị

plot(t, cos(t), 'r'); Vẽ một đồ thị tiếp. là màu đỏ của đường vẽ

Và  bạn sẽ được kết quả sau:

hold-on-trong-gui-matlab
hold-on-trong-gui-matlab

Như trên thì chỉ là một ví dụ hết sức đơn giản mà thôi Đó là ta vẽ đồ thị trên một Axes. Một câu hỏi đặt ra là làm sau để vẽ ra 2 hoặc nhiều đồ thị trong một GUI? Thì cũng không khó khăn là mấy đó là bạn tạo thêm 1 hay nhiều đối tượng Axes trong một GUI và ta sẽ viết code để định danh cho nó.

| Hướng dẫn vẽ 2 hoặc nhiều đồ thị trên 1 GUI

Mặc định nếu từ 2 Axes trở nên thì nếu bạn không định danh vẽ nên Axes nào thì thì trương trình sẽ chọn cái Axes ở cuối cùng mà bạn tạo ra đưa vao GUI như là trường hợp này.

ve-2-hoac-nhieu-axes-tren-mot-gui
ve-2-hoac-nhieu-axes-tren-mot-gui

Vậy có cách nào để ta chỉ định xem vẽ ở vùng nào hay không? Câu trả lời là có. Ta sẽ sử dụng lệnh sau:

axes(handles.axes1);

% Viet Code cho axes1

axes(handles.axes2);

% Viet Code cho axes2

Như đoạn code trên bạn sẽ hiểu là khi ta muốn vẽ đồ thị nào nên thì ta gọi tag của axes đó là được. Khá là dễ ràng phải không?

handeles-axes-gui
handeles-axes-gui

Và bạn sẽ nhận được kết quả sau:

ve-nhieu-do-thi-tren-mot-gui-matlab
ve-nhieu-do-thi-tren-mot-gui-matlab

Tiếp để gán nhãn ký hiệu cho trục x, trục y của một đồ thị nào đó thì bạn gõ lệnh sau:

xlable('Ten Truc X')

yable('Ten Truc Y')

Như vậy thì bạn đã hiểu được như thế nào để vẽ được đồ thị trên một giao diện GUI nào đó rồi đúng không nào.

Có một số bạn hỏi là nào sao để ẩn cái đối tượng Axes khi chạy trương trình. Chỉ khi nào ta nhấn nút Push Button hay một thao tác nào đó muốn nó hiện thị đồ thị trong Axes đó thì mới hiện. Thì cũng khá đơn giản bạn chỉ cần nhấn chuột phải vào đối tượng Axes và chọn Inspector và bạn tìm đến thuộc tính có tên là Visible chọn giá trị nó là Off là được.

Để cho nó chuyên nghiệp hợp cũng như dễ nhìn hơn bởi vì khi bạn ẩn Axes khi khởi động nên thì trương trình hiện ra không có gi nìn cũng không được đẹp lắm. Thì có một cách khác đó là bạn tạo một thuộc tính Panel và cho Axes vào đó thì nhìn nó đẹp hơn.

Chú thích: Panel giống như là một cái bảng điện ở các hộ gia đình vậy vậy. Bên trong bảng điện thì sẽ có các ổ cắm, công tắc,… chính những cái này là Axes đó. Bạn di chuyển Panel đi đâu thì Axes di chuyển theo đó.

Tổng Kết:

Như vậy là chúng ta đã vừa học xong làm sao vẽ được 1 hay nhiều đồ thị trên một giao diện nào đó trong phần mền Matlab rồi. Nó cũng không khó cho lắm cho nên bạn hãy thao tác lại nhiều lần cho thuần thục nhé. Chúc bạn thành công!

 

5 1 bỏ phiếu
Đánh giá bài viết

Thủ Thuật Windows

Nếu như trong quá trình bạn tải file Active về mà bị thông báo là "tệp chứa virus" và bị xóa thì hãy làm theo các bước sau trước khi tải về nhé:

Bước 1: Tắt Windows Defender (Win 10), bạn hãy làm theo các bước này để tắt Defender tạm thời nhé, sau khi Active xong, bạn có thể bật lại:
1. Mở ứng dụng Settings.
2. Trên cửa sổ Settings, bạn tìm và click chọn Update & security.
3. Tiếp theo click chọn Windows Defender.
4. Chuyển trạng thái tùy chọn Real-time protection sang OFF.

Bước 2: Ngoài ra, Nếu trong quá trình tải về mà bạn dùng trình duyệt Chrome hay Cốc Cốc thì sau khi file tải xong không được bấm "Hủy" mà bạn nên bấm tổ hợp phím “Ctrl + J” để vào phần quản trị download, tìm đến file mà bạn tải rồi click vào ô “Khôi phục tệp…” nhé.

Có một số trường hợp file Active tải về mặc định bị xóa, nếu gặp trường hợp này bạn cần chắc chắn rằng Windows Defender hay phần mềm diệt virus trên máy đã được tắt. Sau đó bạn bấm “Ctrl +J“, tại link tải active mà bạn vừa tải về đã bị xóa, bạn hãy click vào đó để trình duyệt tải lại một lần nữa và lần này là sẽ thành công.

BQT: VuTienBlog

Subscribe
Thông báo
guest
1 Comment
Phản hồi nội tuyến
Xem tất cả các ý kiến
nam ninh
nam ninh
6 year ago

Chào anh! em đang làm giao diện, em tạo nhiều đồ thị hiển thị hình ảnh màu trên cùng một gui. Nhưng khi em dùng lệnh axes.handle cho tất cả các đồ thị thì chúng bị ảnh hưởng màu lẫn nhau, vd hiện hình đt.1 thì màu hình dt2 đổi màu theo mong anh giúp!

Top
11
0
Bác có thắc mắc? Nhấn vào đây để bình luận!x
()
x