如何在R中的x轴上使用两个分类变量制作散点图

奇斯卡

我正在尝试在x轴上使用两个分类变量在R中创建散点图。对于箱线图,我知道如何执行此操作(请参见下面的代码的第一部分),但是以某种方式,我无法使其用于散点图。我已经尝试了几件事,但是当我绘制点时,它们总是重叠并且不再显示第二个分类变量。抖动也不起作用,因为我希望我的类别聚类并且不要随机分散它们。有谁知道如何做到这一点?在下面,您可以找到一些示例数据和我尝试过的一些图形,包括注释。第一张图给我的东西与我想要的东西相似,但随后是一个箱线图而不是散点图。第二张图给出了一个散点图(人为第二个分类变量创建数字),

为了使其更加复杂,我还想显示一条带有所有散点图的平均值线。在R中使用ggplot2在具有均值段的分类散点图中执行的操作类似如何添加呢?

感谢你的帮助!

time = c(rep('t1',12),rep('t2',12))
Origin =  c(rep('I1B',4),rep('I1C',4),rep('J4A',4),rep('I1B',4),rep('I1C',4),rep('J4A',4))
LB_FR = runif(24)

df = data.frame(time,Origin,LB_FR)

#does not work with geom_point
ggplot(df, aes(x = time, y = LB_FR, fill = Origin)) + geom_boxplot() + ggtitle('LB_FR')

#create df_2 with numbers instead of categories for Origin
df_2 = df
for (r in 1:nrow(df)){
  if (df$Origin[r] == 'I1B') df_2[r,'OriginNr'] = 1
  if (df$Origin[r] == 'I1C') df_2[r,'OriginNr'] = 2
  if (df$Origin[r] == 'J4A') df_2[r,'OriginNr'] = 3
}

# indices for time
t1 = df_2$time=="t1"
t2 = df_2$time=="t2"

plot(df_2$OriginNr,df$LB_FR, 
     xlim = c(0,4), ylim = c(0,1), bty = 'n',
     main = 'LB_FR', ylab = 'Fraction remaining', xlab = 'Origin', type = 'n')
points(df_2$OriginNr[t1],df_2$LB_FR[t1],col='red')
points(df_2$OriginNr[t2],df_2$LB_FR[t2],col='blue')
legend(0.1,0.9,legend=c('month 0-6','month 6-12'),pch=1,col=c('red','blue'),bty='n',cex=1.2)
格雷戈尔·托马斯(Gregor Thomas)

默认的“位置”的geom_boxplot回避位置。您也可以使用以下方法进行仿真geom_point

ggplot(df, aes(x = time, y = LB_FR, color = Origin)) + 
    geom_point(position = position_dodge(width = 0.4))

在此处输入图片说明

我建议保持您的问题重点:与其“使您的问题变得更加复杂”,不如对中庸之道提出一个新问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

针对 x 轴上的两个分类变量制作 sns.swarmplot

如何通过在 x 轴上使用两个变量和在 y 轴上使用分组变量来制作条形图?

如何在两个变量(r中的两个y轴图)上添加趋势线?

如何从ggplot2中的两个分类变量创建x轴标签?

如何在python中的两个不同y轴上绘制两个变量?

如何使用 Python 制作具有两个 y 轴(x、y1 和 y2)的散点图

两个分类变量的散点图

如何在R中的X轴上制作短线

如何在Google图表中的x轴上显示两个标题?

如何使用r中的plot()在x轴上创建具有有序字符变量的散点图?

如何在R中制作两个“点图”?

使用两个离散变量绘制多个图-如何在两个轴上包括所有离散变量

棘手图:在 R 或 excel 中在同一 x 轴上绘制两个变量的值

如何在散点图qplot或ggplot2中具有两个变量?

如何在x轴上具有两个类别的R中手动创建箱形图

ggplot2 中带有两个分类变量的散点图

如何交叉制表两个变量以对 R 中的第三个分类变量进行分类

使用 R 中的 Plotly 包绘制具有两个名义变量的散点图

如何在ggplot2中可视化两个分类变量

在熊猫中,如何在两个不同的轴上分组两次?

如何在R中优化两个变量函数

使用带有数值 x 轴的 ggplot 在 R 中的 y 轴上绘制分类变量的比例

如何使用ggplot2软件包在X轴上绘制2个类别变量并将两个连续变量绘制为“填充”?

R中具有相同变量的两个不同x轴的图

如何在Python的x轴上的两个特定点之间创建单个水平条?

使用Plotly.js绘制两个条形图和两个散点图并共享相同的x轴

Matplotlib如何在两个y轴上绘制

在R中混合两个散点图

如何在R中用单个x轴绘制两个分组的条形图(垂直)?