Khi sử dụng chủ đề ggplot2 với nền đen, có thể điều khiển màu huyền thoại cho hướng dẫn khác với hướng dẫn màu để mọi thứ không được tô màu đen? Nếu vậy, làm thế nào?Kiểm soát màu của các phần tử chú giải không phải là hướng dẫn màu trong ggplot
library(ggplot2) # needs to be 0.9.3 for this theme
data(iris) # included with ggplot2
theme_black<- function (base_size = 16, base_family = ""){
theme_minimal() %+replace%
theme(
line = element_line(colour = "white", size = 0.5, linetype = 1,
lineend = "butt"),
rect = element_rect(fill = "white",
colour = "white", size = 0.5, linetype = 1),
text = element_text(family = base_family,
face = "plain", colour = "white", size = base_size,
angle = 0, lineheight = 0.9, hjust = 0, vjust = 0),
plot.background = element_rect(colour = 'black', fill = 'black'),
plot.title = element_text(size = rel(1.2)),
panel.border = element_rect(fill = NA, colour = "white"),
panel.grid.major = element_line(colour = "grey20", size = 0.2),
panel.grid.minor = element_line(colour = "grey5", size = 0.5),
strip.background = element_rect(fill = "grey30", colour = "grey30")
)
}
ggplot(data=iris, aes(x=Sepal.Length, y=Sepal.Width, shape=Species,
colour=Petal.Length))+geom_point()+theme_black()+
scale_colour_gradient(low = "purple", high = "white")
Như bạn thấy, màu sắc mặc định cho phần hình dạng của các huyền thoại đã không được thay đổi, vì vậy nó là vô hình và người ta không thể khẳng định loài nào là đó:
Các chỉ có giải pháp tôi có ngay bây giờ là thay đổi màu sắc huyền thoại.background, nhưng đây là một sự lãng phí mực và xấu xí.
Đây là bản sửa lỗi từng phần: '+ hướng dẫn (hình dạng = guide_legend (ghi đè lên.aes = danh sách (màu =" trắng ")))'. Thật không may, 'theme()' không thể được sử dụng để thay đổi những thứ như màu điểm mặc định. – bdemarest
Cảm ơn phản hồi này (+1). Tôi nghĩ rằng nó sẽ có giá trị thêm như là một câu trả lời: Tôi chắc chắn sẽ upvote nó. – MattBagg