在我试图绘制的数据中,每个样本属于几个组中的一个,将在自己的网格上绘制。我正在为每个样本绘制堆积条形图,这些样本将按越来越多的序列排序,这是每个样本的id属性。
目前,情节(带有一些随机数据)如下所示: (因为我没有图像所需的10个代表,我在这里链接它)
我需要做几件事。我不知道从哪里开始。
我曾尝试将facet_grid的比例和大小设置为free_x,但这会导致未使用的参数错误。我认为这与我无法正确加载缩放库这一事实有关(它一直说不可用)。
处理绘图的代码:
ggfdata <- melt(fdata, id.var=c('group','nseqs','sample'))
p <- ggplot(ggfdata, aes(x=nseqs, y=value, fill = variable)) +
geom_bar(stat='identity') +
facet_grid(~group) +
scale_y_continuous() +
opts(title=paste('Taxonomic Distribution - grouped by',colnames(meta.frame)[i]))
答案 0 :(得分:0)
试试这个:
update.packages()
## I'm assuming your ggplot2 is out of date because you use opts()
## If the scales library is unavailable, you might need to update R
ggfdata <- melt(fdata, id.var=c('group','nseqs','sample'))
ggfdata$nseqs <- factor(ggfdata$nseqs)
## Making nseqs a factor will stop ggplot from treating it as a numeric,
## which sounds like what you want
p <- ggplot(ggfdata, aes(x=nseqs, y=value, fill = variable)) +
geom_bar(stat='identity') +
facet_wrap(~group, scales="free_x") + ## No need for facet_grid with only one variable
labs(title = paste('Taxonomic Distribution - grouped by',colnames(meta.frame)[i]))