【发布时间】:2020-11-05 18:35:11
【问题描述】:
R 专家下午好,
我正在用 R 制作一个相当复杂的条形图,我很难在我的图表中重新组织集群。具体来说,所有的控制值和病变值都分别聚类,如下所示:
我希望它们在每篇论文和任务中并排排列,而不是在每个方面单独聚集控制和损伤条件。这应该会导致 Control 和 Lesion 标签重复多次,我不知道该怎么做。我用来实现此条形图的代码如下:
p10 <- ggplot(cbmeta_new1,
aes(x = Condition, y = Proportion, fill = Task, alpha = Paper)) +
geom_bar(stat = 'identity', position = 'dodge', colour='black') +
facet_grid(~ Type) +
scale_alpha_discrete()
有人可以建议我如何编辑上述脚本以实现所需的格式吗?提前感谢您的时间和考虑!
以下是一些示例数据:
dput(cbmeta_new[1:10, ])
structure(list(Paper = structure(c(1L, 2L, 2L, 2L, 2L, 4L, 5L,
3L, 3L, 6L), .Label = c("Cattaneo et al., 2012", "Clausi et al.,
2019",
"Gerschcovich et al., 2011", "Hoche et al., 2016", "Roca et al.,
2013",
"van Harskamp et al., 2005", "van Overwalle et al., 2019"), class =
"factor"),
Type = structure(c(2L, 1L, 3L, 4L, 4L, 1L, 4L, 1L, 4L, 4L
), .Label = c("Perceptual", "Sequencing", "Emotion Attribution",
"Verbal Vignette", "Other"), class = "factor"), Task = structure(c(1L,
9L, 3L, 5L, 12L, 9L, 5L, 9L, 5L, 12L), .Label = c("Bio Action Obs",
"Causal Attribution", "Emot Attribution", "False Belief",
"Faux Pas", "Gravity", "Mechanical", "Norm Behavior", "RMET",
"Sequencing", "Social Script", "ToM", "Trait Attribution",
"Violations"), class = "factor"), Condition = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Control",
"Lesion"), class = "factor"), Proportion = c(0.8875, 0.73,
0.71, 0.78, 0.95, 0.7632, 0.91, 0.829444444, 0.95, 0.986428571
)), row.names = c(NA, 10L), class = "data.frame")
抱歉,我是这个网站的新手,仍在探索如何最好地发布这些帖子。
亲切的问候, 琳达
【问题讨论】:
-
您能否添加数据,以便我们有一个最小的可重现示例?这样人们就可以操纵它,并且更有可能找到解决问题的方法。
-
如果您能提供一些数据以使您的代码可重现,这将更容易为您提供帮助,请参见此处:stackoverflow.com/q/5963269/6240490。
-
听起来您不想在 x 轴上显示
Condition。听起来您想要在 x 轴上组合Paper和Task- 或者可能是纸张、任务和条件。这可以通过为 x 轴创建一个新变量来实现纸张、任务和条件的独特组合。但是如果没有一些样本数据,我们真的无能为力。dput()是共享示例数据的最佳方式,例如前 10 行的dput(cbmeta_new1[1:10, ])。选择一个小的子集来说明问题 - 可能只是前两个方面。 -
@GregorThomas 感谢您的周到反馈。我已根据您的要求使用一些示例数据编辑了我的帖子。如果您需要任何进一步的信息,请随时告诉我!
-
@luismf 您好,非常感谢您的反馈!我只是包含了一些示例数据。我希望这是有帮助的。如果您需要任何进一步的信息,请告诉我。