ggplot + geom_point +基于大小和颜色的图例

时间:2013-06-14 17:44:37

标签: r ggplot2 legend legend-properties

使用geom_point时,有没有办法在图例中显示尺寸和颜色?

library(ggplot2)
cons2 <- data.frame(
  value_date  = as.Date(c('2013-04-30', '2013-04-30', '2013-06-13', '2013-06-13')),
  ticker = c('AAPL','FTW','AAPL','FTW'),
  discount = c(0.34,0.10,0.25,0.20),
  b = c(0.40,0.55,.60,0.90),
  yield = c(0.08,0.04, 0.06,0.03)
)

p <- ggplot(cons2)
p <- p + geom_point(aes(yield,b, size = discount, color=value_date))
p

此图表仅显示图例中的尺寸(折扣),但我想显示尺寸(折扣)和颜色(value_date)。

2 个答案:

答案 0 :(得分:3)

ggplot2不知道如何处理Date类。尝试:

color=factor(value_date)

代替。

答案 1 :(得分:1)

由于某种原因,ggplot2不会自动确定它需要日期框架。试着明确告诉它:

ggplot(cons2) +
  geom_point(aes(yield, b, size = discount, color = value_date)) +
  scale_colour_gradient(trans = "date")