表示されている動作ggplot2
は、プロットの軸範囲外のデータをどのように処理するかによるものです。この動作は、以下で説明するように、使用するかscale_y_continuous
(または同等にylim
)、またはcoord_cartesian
軸範囲を設定するかによって変更できます。
library(ggplot2)
ggplot(mtcars, aes(mpg, hp)) +
geom_point()
以下のコードでは、hp = 335の1つの点がプロットのy範囲の外側にあります。また、以前scale_y_continuous
はy軸の範囲を設定していたため、このポイントは、線形回帰直線など、ggplotによって計算される他の統計や要約メジャーには含まれません。
ggplot(mtcars, aes(mpg, hp)) +
geom_point() +
scale_y_continuous(limits=c(0,300)) +
geom_smooth(method="lm")
Warning messages:
1: Removed 1 rows containing missing values (stat_smooth).
2: Removed 1 rows containing missing values (geom_point).
以下のコードでは、hp = 335のポイントはまだプロットのy範囲外にありますが、それでもこのポイントは、線形回帰線など、ggplotが計算する統計または要約メジャーに含まれています。これは私たちが使用したためですcoord_cartesian
はy軸の範囲を設定していたであり、この関数は、データに対して他の計算を行うときに、プロット範囲外のポイントを除外しません。
このプロットと前のプロットを比較すると、2番目のプロットの線形回帰線の傾きがわずかに急であることがわかります。これは、回帰線の計算時にhp = 335の点が含まれているためですが、プロットには表示されていません。 。
ggplot(mtcars, aes(mpg, hp)) +
geom_point() +
coord_cartesian(ylim=c(0,300)) +
geom_smooth(method="lm")
y
その質問の軸には制限があります。値があるため、この関数の0と0.12の間で制限されています:ylim(0,0.12)