我正在使用R,我有一个带有近2,000个条目的data.frame,如下所示:
> head(PVs,15)
LogFreq Word PhonCV FreqDev
1593 140 was CVC 5.480774
482 139 had CVC 5.438114
1681 138 zou CVVC 5.395454
1662 137 zei CVV 5.352794
1619 136 werd CVCC 5.310134
1592 135 waren CVV-CV 5.267474
620 134 kon CVC 5.224814
646 133 kwam CCVC 5.182154
483 132 hadden CVC-CV 5.139494
436 131 ging CVC 5.096834
734 130 moest CVVCC 5.054174
1171 129 stond CCVCC 5.011514
1654 128 zag CVC 4.968854
1620 127 werden CVC-CV 4.926194
1683 126 zouden …Run Code Online (Sandbox Code Playgroud) 我试图获得一个相当常见的条形图,但尽管阅读了大量有关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
Run Code Online (Sandbox Code Playgroud)
我想得到的是一个条形图,Block其中x轴的列作为分类变量.在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")
Run Code Online (Sandbox Code Playgroud)
我以为我要做的是先用包含块的分类x轴创建基础图.然后,geom_bar我以为我正在添加第一RTreg列,第二列,geom_bar我正在添加RTrnd列.选项position等于dodge我,虽然我将并排获得两个酒吧.但是,我得到的情节是:
有效的XHTML http://s12.postimage.org/k0przrmtp/failed_geom_bar.png.
关于如何并排获得两个酒吧的想法,并希望有不同的颜色和每个的传奇?我真的很感激这里的一些指导.
提前致谢.
我在R中有以下数据框:
>AcceptData
Mean.Rank Sentence.Type
1 2.5 An+Sp+a
2 2.6 An+Nsp+a
3 2.1 An+Sp-a
4 3.1 An+Nsp-a
5 2.4 In+Sp+a
6 1.7 In+Nsp+a
7 3.1 In+Sp-a
8 3.0 In+Nsp-a
Run Code Online (Sandbox Code Playgroud)
我想绘制的,使用x轴上的Sentence.Type列,每个单元格的实际名称作为x轴上的一个点.我希望y轴以1.5的步长从1到4
到目前为止,我还没有能够用plot()而不是hist()来绘制这个.我不断得到不同类型的错误,主要是因为data.frame中字符列的性质.
我知道这对大多数人来说应该是容易的,但我仍然是R和R的菜鸟,在几个小时后我无法得到正确的情节.任何帮助深表感谢.
编辑:
我得到的一些错误:
> hist(AcceptData$Sentence.Type,AcceptData$Mean.Rank)
Error in hist.default(AcceptData$Sentence.Type, AcceptData$Mean.Rank) :
'x' must be numeric
Run Code Online (Sandbox Code Playgroud)
或者:(这不会给出错误,但绝对不是我想要的图形.它具有x轴左侧的所有x值)
plot(AcceptData$Sentence.Type,AcceptData$Mean.Rank,lty=5,lwd=2,xlim=c(1,16),ylim=c(1,4),xla b="Sentence Type",ylab="Mean Ranking",main="Mean Acceptability Ranking per Sentence")
Run Code Online (Sandbox Code Playgroud)