Mặc dù câu trả lời của @ whuber chỉ cung cấp những gì bạn đã hỏi, tôi muốn cảnh báo rằng những gì bạn hỏi có thể không phải là cách tốt nhất để thể hiện trực quan dữ liệu của bạn, vì hai lý do.
- Người xem sẽ tự nhiên cho rằng màu sắc được phân bổ đều theo giá trị (độ sâu) chứ không phải theo thứ hạng. Bạn sẽ phải làm việc chăm chỉ với việc dán nhãn của mình để khiến bộ não nhận thức của người xem ghi đè lên những gì hệ thống thị giác của họ đang nói với họ.
- Thứ hạng có thể không quan trọng đối với người xem của bạn hơn độ sâu thực tế. Nếu có nhiều giá trị trong khoảng từ 0 đến 1, thì có vấn đề gì về mặt phân tích làm thế nào các giá trị đó được phân phối không?
Tất nhiên, bạn biết ứng dụng của mình tốt nhất, vì vậy tôi không thể nói câu trả lời đúng là gì, nhưng dưới đây là một số lựa chọn thay thế sử dụng dữ liệu được tạo bởi
r = Sqrt((:x * :x + :y * :y) / 400);
t = ArcTan(:y, :x);
z = (12 * Exp(-r * r * 3)) * Abs(Sin(2 * Pi() * r) - r * Cos(3 * t))
Dữ liệu đi từ 0 đến 12,5 với phân phối sau:
Biểu đồ bề mặt 3 chiều cho thấy một số đỉnh, máng nông và gò nhỏ:
Bây giờ hãy xem xét một số lô đường viền 2 chiều.
Ánh xạ màu tuyến tính thẳng, bỏ lỡ các tính năng nhỏ hơn như bạn đã thấy:
Nếu sự thay đổi trong các khu vực sâu là không quan trọng, thì việc cắt ánh xạ màu cho phép nhiều màu sắc hơn cho các độ sâu nhỏ hơn trong khi duy trì ánh xạ tuyến tính trong khu vực đó:
Để so sánh, đây là chế độ xem màu xếp hạng (xin lỗi rằng huyền thoại của tôi nằm trong các giá trị xếp hạng thay vì giá trị độ sâu):
Tôi không chắc đó có phải là đại diện tốt cho ứng dụng của bạn hay không. Các chi tiết trong máng nông được phóng đại. Ánh xạ màu nhật ký tương tự và có ưu điểm là có một số giải thích thực sự và có thể thống nhất giữa các tập dữ liệu, nhưng nhật ký vẫn không nhận thức được (xin lỗi lần nữa cho huyền thoại):
Cuối cùng, đây là một cách tiếp cận theo một hướng hơi khác có thể được kết hợp với bất kỳ cách nào ở trên để tăng độ phân giải: ánh xạ màu đa sắc. Trong trường hợp này, tô màu là tuyến tính và cắt bớt:
Cuối cùng, một cách tiếp cận mà phần mềm của tôi không cho phép là sử dụng ánh xạ màu tuyến tính nhiều mảnh, mà tôi đã thấy trong một số bản đồ độ cao. Chẳng hạn, độ cao thấp là màu xanh lục với bước tăng 50 ft, độ cao giữa là độ nghiêng theo bước tăng 200 ft và độ cao là độ xám với bước tăng 800 ft.
Điểm mấu chốt : sẽ tốt hơn nếu bộ não của người xem hoạt động với hệ thống nhận thức trực quan của bạn thay vì chống lại nó.