Pomiń poziomy osi x bez danych na wykresie fasetowym i zmień szerokości pasków
Jak widać na poniższych danych, brakuje niektórych poziomów zmiennej „osi” dla osi x dla niektórych zmiennych fasetowania „przedmiotów”. Na przykład nie ma „type = A” dla „items = 32”.
Chcę się pozbyćPusta przestrzeń wzdłuż osi x odpowiadającej nieistniejącym „typom” (np. typ A dla przypadku 32 elementów).
Niektóre dane („temp”):
type items value
A 16 6.3
B 16 8.3
C 16 7.9
B 32 7.7
C 32 8.3
C 64 7.9
Kod do kreślenia:
library(ggplot2)
ggplot(temp, aes(x = type, y = value, fill = type)) +
geom_bar(stat = "identity") +
facet_grid( . ~ items)
=======================
Edytować:
Według rozwiązania Jorana, ustawieniescales = "free_x"
robi to, co chcę. Jednak szerokości pasków stają się bardzo duże pod numerami artykułów 32 i 64. Proszę mi pomóc, aby uzyskać szerokości nawet dla wszystkich prętów.
ggplot(temp, aes(x = type, y = value, fill = type)) +
geom_bar(stat = "identity") +
facet_grid( . ~ items, scales = "free_x")