1
以下代碼繪製的是流暢的線條。但似乎沒有跨越整個數據範圍。我做錯了什麼嗎?geom_smooth未跨越整個數據範圍
ggplot(mpg, aes(year, cty)) + geom_jitter() + geom_smooth(method = "lm", se = TRUE, span=3, fullrange=TRUE)
它給我:
以下代碼繪製的是流暢的線條。但似乎沒有跨越整個數據範圍。我做錯了什麼嗎?geom_smooth未跨越整個數據範圍
ggplot(mpg, aes(year, cty)) + geom_jitter() + geom_smooth(method = "lm", se = TRUE, span=3, fullrange=TRUE)
它給我:
你的問題是與geom_jitter
。看看mpg
數據集,看起來只有兩年,1999年和2008年。geom_jitter
正在使範圍看起來比它更寬,但geom_smooth
只在數據範圍內繪製一條線。例如,使用
ggplot(mpg, aes(year, cty)) + geom_point() + geom_smooth(method = "lm", se = TRUE, span=3, fullrange=TRUE)
爲我們提供了這樣一個情節,而不是
geom_jitter
被引起的顫動而不僅僅是y值(CTY),而且x值(年),這使得它看起來就好像數據的日期範圍比實際情況更寬。由於geom_smooth
只能在範圍內進行插值,因此不會像您想要的那樣跨越整個繪圖。
現在非常有意義。謝謝!! – lkahtz
您是否嘗試過設置?ggplot2 :: geom_smooth'fullrange \t 是否適合跨越整個圖的範圍,或者僅僅是數據? –