Добавление пробела между барами в ggplot2 - PullRequest
30 голосов
/ 22 мая 2011

Дорогие все, я хотел бы добавить пробелы между барами в ggplot2. На этой странице предлагается одно решение: http://www.streamreader.org/stats/questions/6204/how-to-increase-the-space-between-the-bars-in-a-bar-plot-in-ggplot2. Вместо использования уровней факторов для группировок по оси X, однако, это решение создает числовую последовательность x.seq, чтобы вручную разместить столбцы, а затем масштабирует их с использованием ширины ( ) аргумент. Однако width () не работает, когда я использую группировки уровней фактора для оси x, как в примере ниже.

library(ggplot2)

Treatment <- rep(c('T','C'),each=2)
Gender <- rep(c('M','F'),2)
Response <- sample(1:100,4)
df <- data.frame(Treatment, Gender, Response)

hist <- ggplot(df, aes(x=Gender, y=Response, fill=Treatment, stat="identity"))
hist + geom_bar(position = "dodge") + scale_y_continuous(limits = c(0, 
    100), name = "") 

Кто-нибудь знает, как получить тот же эффект, что и в связанном примере, но при использовании группировок факторных уровней?

Ура,

Aaron

1 Ответ

77 голосов
/ 22 мая 2011

Это то, что вы хотите?

hist + geom_bar(width=0.4, position = position_dodge(width=0.5))
  • width в geom_bar определяет ширину полосы.
  • width в position_dodge определяетположение каждого бара.

Вероятно, вы сможете легко понять их поведение после некоторой игры с ними.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...