I have this set of data
data<-read.table("http://pastebin.com/raw.php?i=Vb8S91LX", header=TRUE)
When i plot them using ggplot
, the X axis subgroup is automatically arranged as GS
, i_GS
and Nor
for each x variable.
the code i use is
ggplot(data, aes(x=gene, y=value,fill=as.factor(group))) +
geom_bar(stat='identity', position='dodge') +
geom_errorbar(aes(ymin=value, ymax=value+std),position=position_dodge(0.9), width=.2) +
scale_fill_grey() +
theme_bw() +
xlab("gene symbol")+
ylab("value") +
theme(text = element_text(size=20, face="bold"),
axis.text.x = element_text(vjust=2))
My question:
How could i reverse them "i mean the subgroup not the X axis" so that i could get them as Nor
, i_GS
, GS
?
Data
data <- structure(list(gene = structure(c(1L, 2L, 3L, 4L, 5L, 6L, 7L,
8L, 9L, 10L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 1L, 2L,
3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L), .Label = c("C3", "C4A", "C4B",
"C5", "C6", "C7", "C8A", "C8B", "C8G", "C9"), class = "factor"),
group = structure(c(3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L), .Label = c("GS", "i_GS", "Nor"), class = "factor"),
value = c(149L, 43L, 19L, 0L, 0L, 0L, 0L, 0L, 0L, 15L, 192L,
68L, 67L, 51L, 14L, 13L, 0L, 9L, 7L, 41L, 407L, 70L, 71L,
170L, 45L, 47L, 19L, 43L, 24L, 125L), std = c(26L, 17L, 33L,
0L, 0L, 0L, 0L, 0L, 0L, 1L, 51L, 3L, 5L, 45L, 12L, 11L, 0L,
8L, 6L, 29L, 73L, 6L, 6L, 84L, 16L, 30L, 17L, 30L, 10L, 2L
)), .Names = c("gene", "group", "value", "std"), class = "data.frame", row.names = c(NA,
-30L))