0

ggplot2 で 1 つのポイント (常に最後) を強調したいと思います。

私は次の方法でほとんどの道を歩みましたが、いくつかの問題があります。まず、color = 'red'ポイントがピンクであるため、コードの一部が機能していないように見えます。次に、ポイントredが凡例に追加されます。

testDF <- data.frame('A' = rnorm(547), 'B' = rnorm(547), 
                 'date' = seq(as.Date("2012-01-01"), as.Date("2013-06-30"), by = 'day'))

testDF$qtrYr <- factor(paste0('q', 
                            as.POSIXlt(testDF$date)$mon %/% 3 + 1, 
                            '-', 
                            as.POSIXlt(testDF$date)$year + 1900
                            ), 
                     levels = c('q1-2012', 'q2-2012', 'q3-2012', 'q4-2012', 'q1-2013', 'q2-2013'),
                     ordered = TRUE)
gp_XY <- ggplot() +
                geom_point(data = subset(testDF, testDF$date > as.Date("2012-04-01")),  
                           aes(x = A, y = 100 * (A - B), color = qtrYr), pch = 1) + 
                    labs(y = NULL, x = NULL) + 
                geom_smooth(data = subset(testDF, testDF$date > as.Date("2012-05-01")),  
                            aes(x = A, y = 100 * (A - B), color = qtrYr), 
                            method = 'lm', se = F, size = 1.25) + 
                geom_point(data = tail(testDF, 1), 
                           aes(x = A, y = 100 * (A - B), color = 'red'), pch = 19, size = 2)  
4

1 に答える 1

1

上でコメントしたように:

あなたはcolor = 'red'外に置くべきaes()です; のようpch = 19に、美的マッピングではなく、設定値です。

于 2013-05-21T00:22:36.267 に答える