Jak naprawić: estetyka musi mieć długość 1 lub taką samą jak dane.
Błąd, który możesz napotkać w R to:
Error: Aesthetics must be either length 1 or the same as the data (5): fill
Ten błąd występuje, gdy próbujesz określić kolory wypełnienia do użycia na wykresie ggplot2, ale określona liczba kolorów nie jest równa 1 lub nie jest równa całkowitej liczbie obiektów do wypełnienia.
Poniższy przykład pokazuje, jak w praktyce skorygować ten błąd.
Jak odtworzyć błąd
Załóżmy, że pracujemy z wbudowanym zbiorem danych R o nazwie airquality :
#view first six lines of air quality dataset
head(airquality)
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
Załóżmy teraz, że próbujemy utworzyć kilka wykresów pudełkowych, aby zwizualizować rozkład wartości ozonu dla każdego miesiąca:
library (ggplot2)
#attempt to create multiple boxplots
ggplot(data = airquality, aes(x=as. character (Month), y=Temp)) +
geom_boxplot(fill=c(' steelblue ', ' red '))
Error: Aesthetics must be either length 1 or the same as the data (5): fill
Otrzymujemy błąd, ponieważ w zbiorze danych znajduje się 5 unikalnych miesięcy (więc utworzymy 5 wykresów pudełkowych), ale argumentowi dopełnienia podaliśmy tylko dwa kolory.
Jak naprawić błąd
Istnieją dwa sposoby naprawienia tego błędu:
Metoda 1: Użyj tylko jednego koloru w argumencie wypełnienia
Moglibyśmy wybrać tylko jeden kolor w argumencie wypełnienia:
library (ggplot2)
ggplot(data = airquality, aes(x=as. character (Month), y=Temp)) +
geom_boxplot(fill=c(' steelblue '))
Dzięki temu możemy wypełnić każdy wykres pudełkowy tym samym kolorem.
Metoda 2: Użyj tej samej liczby kolorów, ile jest wykresów skrzynkowych
Możemy również określić pięć kolorów do użycia, ponieważ odpowiada to liczbie wykresów skrzynkowych, które utworzymy:
library (ggplot2)
ggplot(data = airquality, aes(x=as. character (Month), y=Temp)) +
geom_boxplot(fill=c(' steelblue ', ' red ', ' purple ', ' green ', ' orange '))
Nie otrzymujemy żadnych błędów, ponieważ liczba dostarczonych kolorów odpowiada liczbie wykresów pudełkowych.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak naprawić inne typowe błędy w R:
Jak naprawić: Wartość dyskretna podawana w skali ciągłej
Jak naprawić: argument nie jest ani numeryczny, ani logiczny: zwraca na
Jak naprawić: Zastąpienie ma zerową długość