Thiết lập và thay đổi bảng màu

Một phần của tài liệu Bài giảng matlab chi tiết (Trang 93 - 95)

6. ĐỒ HỌA 3 CHIỀU TRONG MATLAB

6.8Thiết lập và thay đổi bảng màu

Thực tế colormaps là các ma trận, có nghĩa là bạn có thể thao tác chúng giống như bất kì một ma trận nào khác. Hàm brighten nhờ vào đăc điểm này thay đổi colormap độ tăng hoặc giảm độ nhạy của các màu đậm. bighten(n) cùng với bighten(-

n) phục hồi colormap ban đầu. Lệnh newmap=brighten(n) tạo một thanh màu sáng hơn hoặc tối hơn của colormap hiên tại mà không làm thay đổi biêủ đồ màu hiện tại. Lệnh newmap=brighten(cmap,n) điều chỉnh phiên bản của thanh màu đã được khai báo mà không làm ảnh hưởng đến colormap hiện tại hoặc cmap. brighten(gcf, n) làm sáng tất cả các đối tượng trong hình vẽ hiện tại.

Bạn có thể tạo một colormap của riêng bạn bằng cách đa ra một ma trận mymap m hàng,3 cột và cài đặt nó cùng với colormap(mymap) mỗi giá trị trong một ma trận colormap phải thuộc khoảng từ 0 đến 1. Nếu bạn cố gắng sử dụng một ma trận với nhiều hơn hoặc ít hơn 3 cột hoặc chứa một giá trị nào đó bé thua 0 hoặc lớn hơn1 colormap sẽ đưa ra thông báo lỗi.

Bạn có thể kết nối các colormap theo kiểu toán học. Mặc dù kết quả đôi khi không thể đoán trước được. Ví dụ, biểu đồ có tên gọi là pink :

>> pinkmap = sqrt (2/3*gray+1/3*hot);

Bởi vì colormap là các ma trận, chúng có thể được vẽ đồ thị. Lệnh rgbplot sẽ vẽ đồ thị các giá trị của colormap tương tự như lệnh plot, nhưng sử dụng màu đỏ, màu xanh lá cây và xanh da trời cho nét vẽ. rgbplot(gray) cho biết cả ba màu tăng tuyến tính và đồng đều. Lệnh rgbplot với một số colormap khác như jet, hsv, và prism.

Giá trị hiện tại của cmin và cmax được trả lại bằng caxis không có đối số. Chúng thường là những giá trị lớn nhất và nhỏ nhất của dữ liệu, caxis([cmin cmax ]) sử dụng

colormap nguyên bản cho dữ liệu trong dải giữa cmin và cmax, những điểm dữ liệu

lớn hơn cmax sẽ bị chia ra thành các màu kết hợp với cmax. Và những điểm dữ liệu có giá trị nhỏ hơn cmin sẽ bị chia ra thành các màu kết hợp với cmin. Nếu cmin nhỏ hơn min(data) hoặc cmax lớn hơn max(data ), thì các màu kết hợp với cmin hoặc

cmax sẽ không bao giờ được sử dụng ; chỉ một phần nhỏ của colormap được sử

dụng. caxis(auto) sẽ hồi phục giá trị mặc định của cmin và cmax. Ví dụ sau được minh hoạ trong colorplate4 .

>> pcolor([1:17;1:17]')

>> title('Default color range') >> colormap(hsv(8)) >> axis('auto') >> colorbar >> caxis ans = 1 17

Một phần của tài liệu Bài giảng matlab chi tiết (Trang 93 - 95)