Tôi muốn sử dụng stat_binhex() của ggplot2 để vẽ đồng thời hai biến độc lập trên cùng biểu đồ, mỗi biến có độ dốc màu riêng bằng cách sử dụng scale_colour_gradientn().ggplot2 nhiều stat_binhex() vẽ với các gradient màu khác nhau trong một hình ảnh
Nếu chúng ta bỏ qua thực tế là các đơn vị trục x không khớp, ví dụ có thể tái sản xuất sẽ vẽ đồ thị sau đây trong cùng một hình ảnh trong khi vẫn duy trì các gradient điền riêng biệt.
d <- ggplot(diamonds, aes(x=carat,y=price))+
stat_binhex(colour="white",na.rm=TRUE)+
scale_fill_gradientn(colours=c("white","blue"),name = "Frequency",na.value=NA)
try(ggsave(plot=d,filename=<some file>,height=6,width=8))
d <- ggplot(diamonds, aes(x=depth,y=price))+
stat_binhex(colour="white",na.rm=TRUE)+
scale_fill_gradientn(colours=c("yellow","black"),name = "Frequency",na.value=NA)
try(ggsave(plot=d,filename=<some other file>,height=6,width=8))
Tôi tìm thấy một số cuộc nói chuyện của một vấn đề có liên quan trong nhóm ggplot2 google here.
Đây là hướng đi đúng. Bất kỳ ý tưởng về cách chỉ định một scale_fill_gradientn() cho mỗi stat_binhex()? Ngoài ra, suy nghĩ # 2 được lưu ý hợp lý - ứng dụng dự định của tôi sử dụng cùng một đơn vị cho cả hai biến x – metasequoia
Bạn chỉ có thể có một tỷ lệ 'điền' trong mỗi lệnh gọi' ggplot'. Tôi có thể hình dung một số loại hack mà bạn định nghĩa 'scale_fill_manual' với các màu được chỉ định theo cách thủ công cho mỗi kết hợp của phạm vi giá trị * biến. Sau đó, mỗi lệnh gọi đến 'stat_binhex' sẽ ánh xạ' fill' thành một biến số cụ thể ... nhưng bây giờ tôi chỉ đang bập bẹ ... – bdemarest