我想躲闪已经下令巴geom_bar
。 你知道该如何处理呢?
我的代码:
ttt <- data.frame(typ=rep(c("main", "boks", "cuk"), 2),
klaster=rep(c("1", "2"), 3),
ile=c(5, 4, 6, 1, 8, 7))
ggplot()+
geom_bar(data=ttt, aes(x=klaster, y=ile, fill=typ),
stat="identity", color="black", position="dodge")
和示例图,以便更好地理解这个问题:
是)我有的:
我想有:
一种选择是做一个新的变量来表示吧应该是每个组内,并添加这个变量作为顺序group
在情节的说法。
办法使变量的那个任务很多,这是一个使用功能从dplyr的方式。 新的变量是基于排名ile
在每个内降序klaster
基。 如果您有任何联系组你要弄清楚你想在这种情况下,(应该吧在给定的领带什么顺序?)做什么。 您可能需要设置ties.method
在争论rank
从默认了,大概是"first"
或"random"
。
library(dplyr)
ttt = ttt %>%
group_by(klaster) %>%
mutate(position = rank(-ile))
ttt
Source: local data frame [6 x 5]
Groups: klaster [2]
typ klaster ile rank position
(fctr) (fctr) (dbl) (dbl) (dbl)
1 main 1 5 3 3
2 boks 2 4 2 2
3 cuk 1 6 2 2
4 main 2 1 3 3
5 boks 1 8 1 1
6 cuk 2 7 1 1
现在,只需添加group = position
到你的阴谋代码。
ggplot() +
geom_bar(data=ttt, aes(x=klaster, y=ile, fill=typ, group = position),
stat="identity", color="black", position="dodge")