使用ggplot2进行多重绘图:控制每个绘图的比例

时间:2013-07-30 17:21:56

标签: r ggplot2

我有以下类型的数据(在data.frame df内):

x     A      B      C
1    100    1.2    1.3
2    90     1.1    0.9

我希望得到A的{​​{1}},BC列的多条形图,所以我运行以下内容:

df

它工作正常,除了tmp <- cbind(df$x, melt(df[,-1])) names(tmp) <- c("x", "variable", "value") ggplot(tmp, aes(x,value)) + geom_bar(stat = "identity" ) + facet_grid(variable~.) 列中的值远远高于其余值,并且比例不适应。 有人可以给我一个提示来调整每个情节的比例吗?

非常感谢!

1 个答案:

答案 0 :(得分:2)

您需要将scales='free_y'添加到facet_grid,如?facet_grid中所述...

library(ggplot2)
library(reshape2)

df <- read.data('clipboard', header=TRUE)

tmp <- cbind(df$x, melt(df[, -1]))
names(tmp) <- c("x", "variable", "value")

ggplot(tmp, aes(x=x)) + 
  geom_bar(stat = "identity" ) + 
  facet_grid(variable ~ ., scales='free_y')