我无法找到有关group
data.frame
变量的确切信息的详细信息。我有三个向量如下:
compare <- c("5vs2", "8vs5", "11vs8")
up <- c(4432, 1578, 2254)
down <- c(-4360, -1324, -2652)
我正在尝试为条形图创建数据框。我创建如下:
up_down <- data.frame(
group = c("Up", "Down"),
x = compare,
y=c(up, down))
输出数据帧如下:
group x y
1 Up 5vs2 4432
2 Down 8vs5 1578
3 Up 11vs8 2254
4 Down 5vs2 -4360
5 Up 8vs5 -1324
6 Down 11vs8 -2652
在这里可以看到,在第5行中,分组应该是Down
,而是将其设为Up
。我到底错过了什么?
在绘制图表时,x值随后被置于无序状态,11vs8首先放置,6vs3秒放置,9vs6放置。我觉得这些问题应该是明显的问题要解决,但我无法弄明白。
ggplot(up_down, aes(x=x, y=y, fill=group))+
geom_bar(stat="identity", position="identity")
答案 0 :(得分:3)
你是长度为2,3和6的绑定向量.R循环向量以适应最大长度,因此group
重复1 2 1 2 1 2
。如果您想避免这种情况,请尝试改为:group = rep(c("Up", "Down"), each = 3)