【发布时间】:2013-02-15 23:36:21
【问题描述】:
我正在尝试获得一个相当常见的条形图,但是尽管阅读了大量有关在 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
我想要得到的是在 x 轴上带有 Block 列的条形图,用作分类变量。在 y 轴上,我想要绘制 RTreg 和 RTrnd 列的值。这是我无法正确处理的部分。我想要的是在 x 轴上每个刻度线有两个条。一根代表该块中RTreg 的值,一根代表该块中RTrnd 的值。像这样的:
.
但有 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 我虽然我打算并排获得两个酒吧。但是,我得到的情节是:
知道如何将两个条并排放置,并希望每个条有不同的颜色和图例吗?我真的很感激这里的一些指导。
提前致谢。
【问题讨论】: