Bạn đang gặp phải một điểm đặc biệt của ScalarMappables
. Họ đảm nhận việc chuẩn hóa dữ liệu nằm trong phạm vi [0, 1] và chuyển giá trị đó vào bản đồ màu. Theo mặc định, nó đặt dưới cùng của phạm vi thành min(values_you_are_mapping)
và từ trên cùng đến giá trị lớn nhất, nếu tất cả các giá trị của bạn giống hệt nhau thì kết quả là chiều rộng của phạm vi bằng 0 và ánh xạ (v - max_v) / (max_v - min_v)
Thổi lên. Giải pháp là cho nó biết phạm vi nên là gì
imshow(..., vmin=min_t, vmax=max_t)
scatter(..., vmin=min_t, vmax=max_t)
ở đâu max_t
và min_t
là nhiệt độ tối đa và tối thiểu mà bạn có thể nhận được. Điều này cũng sẽ làm cho ánh xạ màu nhất quán trên tất cả các hình của bạn.