[英]R ggplot2 Colour gradient by date
使用以下代码:
myPlot <- ggplot(data=df, aes(x=xVal, y=yVal, color=as.integer(Date) ) ) +
geom_point() +
scale_colour_gradient(low="blue", high="red" ) +
labs(color="Date")
我可以按日期获得简单的渐变颜色。 但是,图例将这些显示为整数,这是没有用的。 如何将这些整数转换回日期以便在图例上显示?
我想保留自动限制,以便我可以将其用作任何日期范围数据的函数的一部分。
在这个答案的帮助下,我找到了一个解决方案。
myPlot <- ggplot(data=df, aes(x=xVal, y=yVal, color=as.integer(Date) ) ) +
geom_point() +
scale_colour_gradient(low="blue", high="red" breaks=myBreaks) +
labs(color="Date")
myBreaks <- function(x){
breaks <- c(min(x),median(x),max(x))
attr(breaks,"labels") <- as.Date(breaks, origin="1970-01-01")
names(breaks) <- attr(breaks,"labels")
return(breaks)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.