簡體   English   中英

R ggplot2按日期的顏色漸變

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM