
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.

| 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.

Ở đâ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.

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.

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. r là màu đỏ của đường vẽ
Và bạn sẽ được kết quả sau:

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.

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?

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

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!
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!