为具有少量观察值的组添加点数 geom_density_ridges
Add points to geom_density_ridges for groups with small number of observations
我喜欢使用 geom_density_ridges(),每个组也包含单独的分数。但是,某些组的样本量较小(例如 n=1 或 2),因此无法生成密度脊。对于这些组,我希望能够绘制现有观测值的位置 - 即使将显示 no 概率密度函数。
在此示例中,我希望能够在适当的线上绘制 5 月的 2 个数据点。
library(tidyverse)
library(ggridges)
data("lincoln_weather")
#pull weather from all months that are NOT May
lincoln_weather_nomay<-lincoln_weather[which(lincoln_weather$Month!="May"),]
#pull weather just from May
lincoln_weather_may<-lincoln_weather[which(lincoln_weather$Month=="May"),]
#recombine, keeping only the first two rows for the May dataset
new_weather<-rbind(lincoln_weather_nomay,lincoln_weather_may[c(1:2),])
ggplot( new_weather, aes(x=`Min Temperature [F]`,y=Month,fill=Month))+
geom_density_ridges(alpha = 0.5,jittered_points = TRUE, point_alpha=1,point_shape=21) +
labs(x="Average temperature (F)",y='')+
guides(fill=FALSE,color=FALSE)
如何将 5 月观测值的点添加到适当的位置(即 5 月槽)以及沿 x 轴的适当位置?
只需向函数添加一个单独的 geom_point()
调用,在该函数中您对数据进行子集化以仅包括之前未绘制类别的观察值。您可以将任何常用自定义应用到 'match' 为其他类别绘制的点,或使这些点 'stand out'.
ggplot( new_weather, aes(x=`Min Temperature [F]`,y=Month,fill=Month))+
geom_density_ridges(alpha = 0.5,jittered_points = TRUE, point_alpha=1,point_shape=21) +
geom_point(data=subset(new_weather, Month %in% c("May")),
aes(),shape=13)+
labs(x="Average temperature (F)",y='')+
guides(fill=FALSE,color=FALSE)
我喜欢使用 geom_density_ridges(),每个组也包含单独的分数。但是,某些组的样本量较小(例如 n=1 或 2),因此无法生成密度脊。对于这些组,我希望能够绘制现有观测值的位置 - 即使将显示 no 概率密度函数。
在此示例中,我希望能够在适当的线上绘制 5 月的 2 个数据点。
library(tidyverse)
library(ggridges)
data("lincoln_weather")
#pull weather from all months that are NOT May
lincoln_weather_nomay<-lincoln_weather[which(lincoln_weather$Month!="May"),]
#pull weather just from May
lincoln_weather_may<-lincoln_weather[which(lincoln_weather$Month=="May"),]
#recombine, keeping only the first two rows for the May dataset
new_weather<-rbind(lincoln_weather_nomay,lincoln_weather_may[c(1:2),])
ggplot( new_weather, aes(x=`Min Temperature [F]`,y=Month,fill=Month))+
geom_density_ridges(alpha = 0.5,jittered_points = TRUE, point_alpha=1,point_shape=21) +
labs(x="Average temperature (F)",y='')+
guides(fill=FALSE,color=FALSE)
如何将 5 月观测值的点添加到适当的位置(即 5 月槽)以及沿 x 轴的适当位置?
只需向函数添加一个单独的 geom_point()
调用,在该函数中您对数据进行子集化以仅包括之前未绘制类别的观察值。您可以将任何常用自定义应用到 'match' 为其他类别绘制的点,或使这些点 'stand out'.
ggplot( new_weather, aes(x=`Min Temperature [F]`,y=Month,fill=Month))+
geom_density_ridges(alpha = 0.5,jittered_points = TRUE, point_alpha=1,point_shape=21) +
geom_point(data=subset(new_weather, Month %in% c("May")),
aes(),shape=13)+
labs(x="Average temperature (F)",y='')+
guides(fill=FALSE,color=FALSE)