Tôi muốn tạo một ô có mặt với lề trong ggplot2. Tuy nhiên, tôi muốn cốt truyện lề có màu sắc theo từ khía cạnh nào mà điểm cụ thể đã được bắt nguồn. Đây có thể là minh họa tốt nhất với một ví dụ:Điểm tô màu theo hệ số bên lề của một ô ggplot2 mặt trong R
library(ggplot2)
p <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
p + facet_grid(.~gear, margins = TRUE)
Trong cốt truyện lề dán nhãn là "(tất cả)", tôi muốn những chấm có "dụng cụ = 3" để được vẽ với một màu sắc, những người có "thiết bị = 4 "với một màu thứ hai, và những người có" gear = 5 "với một thứ ba.
Cái này không thực hiện công việc:
p <- ggplot(mtcars, aes(mpg, wt)) + geom_point(aes(col=gear))
p + facet_grid(.~gear, margins = TRUE)
Có cách nào để đạt được những gì mà tôi muốn?
Ok, cảm ơn, đó là một ý tưởng thực sự tốt và đơn giản! Hạn chế duy nhất là trong trường hợp đó tôi không thấy một cách để loại bỏ các màu sắc từ các ô phi lợi nhuận. Bạn có thực sự có bất kỳ ý tưởng tại sao 'col (gear)' (hoặc 'col = (as.factor (gear))') không hoạt động, nhưng 'col = ref' làm gì? – AnjaM
Chỉnh sửa có tốt hơn không? Không phải là giải pháp thanh lịch nhất nhưng hy vọng nó sẽ giúp. Tôi nghĩ rằng nó phải làm với việc xác định cả hai màu sắc và faceting với cùng một biến, ggplot cho mỗi khía cạnh màu sắc riêng của nó. –
@AnjaM bạn có thể thử thêm 'scale_color_manual (values = c (" black "," red "," green "," blue "))'. 'col = (as.factor (gear))' sẽ không hoạt động nhưng 'col = as.factor (gear)' nên – Carson