Tôi có năm (5) geom_vline() trong cốt truyện của mình và tôi muốn chúng có màu khác nhau. Có cách nào làm được việc này không?ggplot2: Cách có một màu khác nhau của geom_vline()
Dưới đây là mã của tôi,
library(ggplot2)
x <- seq(-7, 8, length = 90)
tvalues <- dt(x,15)
qplot(x, tvalues) + geom_polygon(fill = "purple", colour = "purple", alpha = 0.5) +
geom_point(fill = "purple", colour = "purple", alpha = 0.2, pch = 21) +
geom_vline(xintercept = c(a <- c(-2.27685371, 0.01661155,
0.33598194, 1.92426022), mean(a)), linetype = "dashed", colour = "red") + theme_bw() + xlab(bquote(bold('Average Tensile Strength (lb/in'^'2'*')'))) +
ylab(expression(bold(P(x)))) +
opts(title = expression(bold("Student t Distribution")), plot.title = theme_text(size = 20, colour = "darkblue"),
panel.border = theme_rect(size = 2, colour = "red"))
Và đây là kết quả,
Thông báo các năm dòng dọc trong cốt truyện, tôi muốn mỗi người trong số những dòng để có một màu sắc khác nhau ,
Tôi đã thử điều này
library(colorRamps)
geom_vline(xintercept = c(a <- c(-2.27685371, 0.01661155,
0.33598194, 1.92426022), mean(a)), linetype = "dashed", colour = matlab.like(5))
nhưng không hiệu quả, Một nỗ lực
geom_vline(xintercept = c(a <- c(-2.27685371, 0.01661155,
0.33598194, 1.92426022), mean(a)), linetype = "dashed", colour = c("red","blue","green","yellow","orange"))
và vẫn không thành công.
Cảm ơn trước!
Vâng, cảm ơn vì đã nhắc nhở :) Tôi nên nghĩ về điều đó. Cảm ơn bạn rất nhiều! bạn tiết kiệm thời gian của tôi :) –
Cảm ơn bạn rất nhiều @ joran! –
Đó là một câu trả lời tuyệt vời, nó đã cho tôi một hướng đi đúng đắn khi làm điều gì đó tương tự. Tôi cần phải thêm geom_hlines vào trung bình của một cốt truyện với các nhóm khác nhau. Tôi đã có nghĩa là theo nhóm và sử dụng geom_hline như mô tả của bạn. Sự khác biệt là tôi đã sử dụng "linetype = grp" để có linetypes khác nhau và nó đã được bên trong cuộc gọi aes, thay vì được bên ngoài như được hiển thị ở đây. – Eduardo