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ść

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *