2013-02-25 63 views
3

我试图绘制的这个data绘制不同类型的条形图ggplot

到目前为止,我已经写了将R脚本中的柱状图如下:

library(ggplot2) 
f<-read.table("Coverage_test", sep="\t", header=TRUE) 
f$Coverage <- factor(f$Coverage, levels=unique(as.character(f$Coverage))) 
g = ggplot(data=f, aes(x=Coverage, y=Variable_counts, group=Form, fill=Type)) 
+ geom_bar(position="dodge", stat="identity", colour="black") 
+ facet_grid(~ Sample_name, scales="free") + opts(title = "Coverage", axis.text.x = theme_text(angle = 90, hjust = 1, size = 8, colour = "grey50")) 
+ ylab("Number of variables") + scale_fill_hue() + scale_y_continuous(formatter="comma") 
ggsave("Figure_test_coverage.pdf") 

这段代码的输出如下:

enter image description here

我的问题是: 是否有显示在虎视眈眈的行为差异的方式h基于两个变量。每个x轴变量有四个小节。我已经选择用'类型'来填充颜色,这显示了我的数据中不同'类型'(一个变量)的行为。但我也想展示变量'Form'在我的数据中的行为。我已将它们分组在我的代码'group = Form'中,但无法在实际图形中(视觉上)区分它。这可以通过对一个变量显示不同的颜色以及对另一个变量显示不同的线型(实线和虚线)以线图形式完成。如下所示: enter image description here

我想知道'Form'变量是否可以用不同的颜色显示,或者至少可以在它们各自的条形图或任何可能的位置下面命名? 任何帮助,不胜感激。

谢谢。

回答

7

我想你想是这样的:

​​

enter image description here

编辑

在这里,我会因为格条形图和SAMRT公式符号的。为了好玩,我用latticeExtra这样的主题使用ggplot。

library(latticeExtra) 
barchart(Variable_counts~Coverage|Sample_name, 
     groups=interaction(Type,Form), 
     data=dat,stack=F,auto.key=list(columns = 4), 
     par.settings = ggplot2like(), 
     axis = axis.grid, 
     between=list(x=2)) 

enter image description here

+1

+1非常漂亮,简洁 – 2013-02-25 04:15:53

+0

做得很漂亮! – smandape 2013-02-25 04:27:40