gpt4 book ai didi

r - 带有 2 个变量并排的条形图

转载 作者:行者123 更新时间:2023-12-04 02:46:05 27 4
gpt4 key购买 nike

我正在尝试获得一个相当常见的条形图,但是尽管阅读了大量关于在 R 中绘图的文档以及 ggplot 及其所有图层的文档,我还是无法按照我想要的方式获得这个图。

我的数据相当简单。

aov.data
Block RTreg RTrnd
1 Block1 0.0000 862.0707
2 Block2 667.2081 770.4315
3 Block3 645.4730 696.0200
4 Block4 674.5200 659.4765
5 Block5 651.4295 633.7333

我想要的是带有 Block 的条形图x 轴上的列,用作分类变量。在 y 轴上,我想要绘制 RTreg 的值和 RTrnd列。这是我无法正确理解的部分。我想要的是 x 轴上的每个刻度线有两个条形。一根柱子代表 RTreg 的值在那个块中,一个条形代表 RTrnd 的值在那个街区。像这样的东西:

Valid XHTML .

但是用 5 套两根棒而不是两根。

到目前为止,我使用了以下代码:
ggplot(aov.data,aes(x=Block)) + 
geom_bar(aes(y=RTreg),stat="identity",position="dodge",col="blue") +
geom_bar(position="dodge") +
geom_bar(aes(y=RTrnd),stat="identity",position="dodge",col="red")

我以为我在做的是首先使用包含块的分类 x 轴创建基本图。然后,用 geom_bar我以为我先添加了 RTreg列,以及第二个 geom_bar ,我正在添加 RTrnd柱子。使用选项 position等于 dodge我想我要并排拿到两个酒吧。但是,我得到的情节是:

Valid XHTML
.

关于如何将两个条并排放置的想法,希望每个条都有不同的颜色和图例?我真的很感激这里的一些指导。

提前致谢。

最佳答案

您必须将数据框从宽到长重新整形,然后您无需为每个条件分别设置条形。

假设数据框名为 df .

library(reshape2)
df.long<-melt(df)
ggplot(df.long,aes(Block,value,fill=variable))+
geom_bar(stat="identity",position="dodge")

enter image description here

关于r - 带有 2 个变量并排的条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15158230/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com