我正在尝试geom_bar从2个独立的data.frames中叠加2个条形图.
dEQ
lab perc
1 lmP 55.9
2 lmN 21.8
3 Nt 0.6
4 expG 5.6
5 expD 0.0
6 prbN 11.2
7 prbP 5.0
Run Code Online (Sandbox Code Playgroud)
和
LMD
lab perc
1 lmP 16.8
2 lmN 8.9
3 Nt 0.0
4 expG 0.0
5 expD 0.0
6 prbN 0.0
7 prbP 0.0
Run Code Online (Sandbox Code Playgroud)
第一个情节是:
p <- ggplot(dEQ, aes(lab, perc)) +
xlab(xlabel) + ylab(ylabel) +
geom_bar(stat="identity", colour="blue", fill="darkblue") +
geom_text(aes(vecX, vecYEQ+1.5, label=vecYlbEQ), data=dEQ, size=8.5) +
theme_bw() +
opts(axis.text.x = theme_text(size = 20, …Run Code Online (Sandbox Code Playgroud) 我试图将两个条形图叠加在彼此之上,而不是旁边。数据来自同一个数据集。我想要 x 轴上的“块”和“开始”和“结束”作为覆盖条形图。
Block Start End
1 P1L 76.80 0.0
2 P1S 68.87 4.4
3 P2L 74.00 0.0
4 P2S 74.28 3.9
5 P3L 82.22 7.7
6 P3S 80.82 17.9
Run Code Online (Sandbox Code Playgroud)
我的脚本是
ggplot(data=NULL,aes(x=Block))+
geom_bar(data=my_data$Start,stat="identity",position ="identity",alpha=.3,fill='lightblue',color='lightblue4')+
geom_bar(data=my_data$End,stat="identity",position ="identity",alpha=.8,fill='pink',color='red')
Run Code Online (Sandbox Code Playgroud)
我得到错误:ggplot2 不知道如何处理数字类的数据
我也试过
ggplot(my_data,aes(x=Block,y=Start))+
geom_bar(data=my_data$End, stat="identity",position="identity",...)
Run Code Online (Sandbox Code Playgroud)
有谁知道我怎样才能做到这一点?谢谢你。
编辑:
如何获得闪避叠加条?
我编辑这篇文章,因为我的下一个问题是相关的,因为它与我原来的帖子相反。
@P.merkle
我不得不将我的绘图更改为四个条形图,显示所有标记为 L 和 S 的区块的平均值。 L 代表沿海地区,S 代表沿海地区。他们进行了两种处理:正常和减少。
我已经计算了平均值和它们的标准差。我需要四个带有各自误差条的条形: Normal/Littoral , Reduced/Littoral , Normal/Sublittoral , Reduced/Sublittoral 。
问题是当我绘制它时,沿海酒吧和两个亚沿海酒吧相互重叠!所以现在我希望它们不要重叠!我怎样才能让它发生?我已经尝试了各种position = 'dodge'和position = position_dodge(newdata$Force),但没有运气......
我的newdata包含以下信息:
Zonation Force …