Thao tỏc với đồ thị

Một phần của tài liệu Giáo trình matlab (Trang 57 - 60)

2 CÁC KHÁI NIỆM CƠ BẢN

5.5 Thao tỏc với đồ thị

Bạn có thể thêm nét vẽ vào đồ thị đã có sẵn bằng cách dùng lệnh hold. Khi bạn thiết lập hold on, MATLAB không bỏ đi hệ trục đã tồn tại trong khi lệnhplot mới đang thực

hiện, thay vào đó, nó thêm dờng cong mới vào hệ trục hiện tại. Tuy nhiên nếu nh dữ liệu không phù hợp với hệ trục toạ độ cũ, thì trục đợc chia lại . Thiết lập hold off sẽ bỏ đi cửa sổ figure hiện tại và thay vào bằng một đồ thị mới. Lệnh holdmà không có đối số sẽ bật tắt chức năng của chế độ thiết lập hold trớc đó. Trở lại với ví dụ trớc:

>> x = linspace(0,2*pi,30); >> y = sin(x);

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

Bây giờ giữ nguyên đồ thị và thêm vào đờng cosine

>> hold on %Giữ nguyên đồ thị đã vẽ lúc trớc

>> ishold % hàm logic này trả về giá trị 1 (true) nếu hold ở trạng thái ON

ans = 1

>> plot(x,z,'m') >> hold off

>> ishold % hold bây giờ không còn ở trạng thái ON nữa.

ans = 0

Nếu bạn muốn hai hay nhiều đồ thị ở các cửa sổ figure khác nhau, hãy dùng lệnh

figure trong cửa sổ lệnh hoặc chọn new figure từ bảng chọn file, figure không có tham số sẽ tạo một figure mới. Bạn có thể chọn kiểu figure bằng cách dùng chuột hoặc dùng lệnh figure(n) trong đó n là số cửa sổ hoạt hoạt động.

Mặt khác một cửa sổ figure có thể chứa nhiều hơn một hệ trục. Lệnh

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

>> x = linspace(0,2*pi,30); >> y = sin(x);

>> z = cos(x);

>> a = 2*sin(x).*cos(x); >> b = sin(x)./(cos(x)+eps);

>> subplot(2,2,1) % pick the upper left of % 2 by 2 grid of subplots >> plot(x,y),axis([0 2*pi -1 1]),title('sin(x)')

>> subplot(2,2,2) % pick the upper right of the 4 subplots

>> plot(x,z),axis([0 2*pi -1 1]),title('cos(x)') >> plot(x,z),axis([0 2*pi -1 1]),title('cos(x)')

>> subplot(2,2,3)% pick the lowwer left of the 4 subplots >> plot(x,a),axis([0 2*pi -1 1]),title('2sin(x)cos(x)') >> subplot(2,2,4)%pick the lowwer right of the 4 subplots >> plot(x,b),axis([0 2*pi -20 20]),title('sin(x)/cos(x)')

Một phần của tài liệu Giáo trình matlab (Trang 57 - 60)

Tải bản đầy đủ (DOC)

(77 trang)
w