[英]Add horizontal line to ggplot
我想使用ggplot2在一個繪圖中繪制不同顏色的多行,然后添加一個單獨的水平線。 我的代碼如下。 它運行良好,直到我運行最后一行p + geom_hline(yintercept=400)
。 所有的線條變黑,右側的傳說消失。
有誰知道如何解決這個問題?
library(ggplot2)
mry <- do.call(rbind, by(movies, round(movies$rating), function(df) {
nums <- tapply(df$length, df$year, length)
data.frame(rating=round(df$rating[1]), year = as.numeric(names(nums)),
number=as.vector(nums))
}))
p<-qplot(year, number, data=mry, group=rating, geom="line",xlab = 'year',
ylab = 'number')
p + geom_line()
p + geom_line(aes(colour = rating))
p + geom_hline(yintercept=400)
你沒有保存中間步驟。 每個情節都只是向p
添加一個東西。 如果你想保留你剛剛添加的作品,你需要做類似的事情:
p <- p + geom_line(aes(colour = rating))
上述問題的具體解決方案可能是簡單地移動最后一行代碼p + geom_hline(yintercept=400)
,直到最后一行的一部分。
這將使您的最后一行代碼看起來像這樣, p + geom_line(aes(colour = rating)) + geom_hline(yintercept=400)
。 您還可以將最后三行合並為p + geom_line(aes(colour = rating)) + geom_hline(yintercept=400)
。
基本上重述了喬蘭建議的內容,但我試圖讓它更具體。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.