Como ajustar o tamanho da faceta manualmente

Eu tenho um gráfico facetado com dados muito diversos. Então, algumas facetas têm apenas 1x valor, mas outros têm 13x valores. Eu sei que existe o parâmetrospace='free' que ajusta a largura de cada faceta pelos dados que representa.

Minha pergunta, existe a possibilidade de ajustar esse espaço manualmente? Como algumas das minhas facetas são muito pequenas, não é mais possível ler os rótulos nas facetas. Fiz um pequeno exemplo reproduzível para mostrar o que quero dizer.

df <- data.frame(labelx=rep(c('my long label','short'), c(2,26)),
                 labely=rep(c('a','b'), each=14),
                 x=c(letters[1:2],letters[1:26]),
                 y=LETTERS[6:7],
                 i=rnorm(28))
ggplot(df, aes(x,y,color=i)) +
  geom_point() +
  facet_grid(labely~labelx, scales='free_x', space='free_x')

Então, dependendo da sua tela, omy long label A faceta é compactada e você não pode mais ler o rótulo.

Encontrei um post na internet que parece fazer exatamente o que eu quero fazer, mas isso parece não funcionar mais emggplot2. O post é de 2010.

https://kohske.wordpress.com/2010/12/25/adjusting-the-relative-space-of-a-facet-grid/

Ele sugere usarfacet_grid(fac1 + fac2 ~ fac3 + fac4, widths = 1:4, heights = 4:1), tãowidths eheights para ajustar cada tamanho de faceta manualmente.

questionAnswers(3)

yourAnswerToTheQuestion