【问题标题】:Boxplot with Rows as X Axis以行为 X 轴的箱线图
【发布时间】:2021-07-13 14:41:12
【问题描述】:

我在可视化我的数据集时遇到问题。我浏览了一些问题,但找不到适合自己的答案。 我的数据集有组名作为列和两行值。在这里,我包含了数据的图像:

我需要一个箱线图,其中 x 轴上的行值(“BodyGoal”和“BodySource”)和组为条形图(这样,对于每个 x 轴点,将有 3 个条形图代表每个 x 轴上的值团体)。基本上是这样的,最好有悬停条。

我很确定这非常容易做到,但我是 R 新手,由于大流行,我无法与我的老师进行太多互动,所以我真的需要一些帮助。提前谢谢!

我跑了两行,但都没有给我想要的解决方案:

barplot(t(bodydf), legend.text = T)(感谢 rawr),但是这让我所有的组都堆叠在一起,我需要它们并排 我也有这个,但这比我需要的还要远: ggplot(stack(bodydf), aes(x=ind, y=values)) +geom_boxplot()

【问题讨论】:

  • 请在您的问题中包含reproducible example,并使用dput 等功能来共享数据而不是图像。您可以尝试类似barplot(t(data), legend.text = TRUE) 的方法来获得在 x 轴上带有行的条形图
  • 嗨 SimgoO,欢迎来到 Stack Overflow。与其用答案编辑您的问题,不如回答您自己的问题并将其标记为已接受。这将向其他用户表明您的问题已得到解决,并可能对未来的访问者有所帮助。
  • 谢谢你,我现在就这样做^^

标签: r plot boxplot


【解决方案1】:

好吧,我不知怎么想通了!!将我的代码分享给像我这样可能需要它的新手:

groups= c("Blind", "Blindfolded", "Sighted","Blind", "Blindfolded", "Sighted")
values = c(0.17, 0.03, 0.05, 0.21, 0.06, 0.03)

deneme = data.frame(groups, values)
deneme$speech = c("Body Goal","Body Goal","Body Goal", "Body Source","Body Source","Body Source")
ggplot(deneme, aes(x=speech, y=values, fill=groups)) + 
  geom_bar(stat="identity", position = "dodge", width = .5) +
  scale_fill_manual("legend", values= c("Blind" = "pink1", "Blindfolded"="slategray1", "Sighted" = "paleturquoise3")) +
  ggtitle("Body Oriented Speech") +
  labs( y= "Ratio per Relevant Clause", x="Speech Item") +
  theme(legend.position="bottom") +
  theme(legend.title = element_blank()) +
  theme(plot.title = element_text(hjust = 0.5))

【讨论】:

    猜你喜欢
    • 2016-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-24
    • 2023-04-10
    • 1970-01-01
    • 2019-12-07
    相关资源
    最近更新 更多