r中是否有任何函数允许绘制这种散点图,这些散点图按点分组?
这是我到目前为止所做的:
hours = c(0.00 ,-1.78 ,-0.50 ,-2.00 ,-2.80 ,2.00 ,-0.16 ,-0.34 ,1.00 ,1.00 ,2.00 ,-1.34 ,-1.00 ,-1.10 ,-0.43 ,-0.49 ,-0.02 ,-0.91, 0.48 ,2.33 ,1.00 ,0.00 ,1.18 ,1.29 ,-1.07 ,-0.26 ,1.96 ,0.36 ,2.00 ,-0.63 ,-0.80 ,-0.70 ,-2.00 ,1.17 ,0.67 ,-3.00)
group = c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2)
df = data.frame(hours,group)
ggplot(df, aes(group, hours)) + geom_point(shape = 16, size = 5, position = position_jitter(w=0.3,h=0.3))
但事实证明这很奇怪:
非常感谢任何帮助!
答案 0 :(得分:2)
这是一种使用汽车数据的方法
library(tidyverse)
library(ggplot2)
data(cars)
cars %>%
gather(variable, value) %>%
ggplot()+
geom_jitter(aes(x = variable, y = value), width = 0.2, height = 0)+
geom_errorbar(data = cars %>%
gather(variable, value) %>%
group_by(variable) %>%
summarise(value = mean(value)), aes(x = variable, ymin= value, ymax = value))+
geom_hline(aes(yintercept = mean(value)), lty = 2)+
theme_bw()
刚发布数据:
ggplot(df)+
geom_jitter(aes(x = as.factor(group), y = hours), width = 0.2, height = 0)+
geom_errorbar(data = df%>%
group_by(group) %>%
summarise(hours = mean(hours)), aes(x = group, ymin= hours, ymax = hours))+
geom_hline(aes(yintercept = mean(hours)), lty = 2)+
theme_bw()