Hoe op te lossen: fout in plot.window(…): bestanden 'xlim'-waarden nodig
Een fout die u kunt tegenkomen bij het gebruik van R is:
Error in plot.window(...): need finite 'xlim' values
Deze fout treedt op wanneer u probeert een plot in R te maken en een tekenvector of een vector met alleen NA-waarden op de x-as gebruikt.
De volgende voorbeelden laten twee verschillende scenario’s zien waarin deze fout in de praktijk kan optreden.
Voorbeeld 1: Fout met karaktervector
Stel dat u een spreidingsdiagram probeert te maken met behulp van de volgende code:
#define data
x <- c('A', 'B', 'C', 'D', 'E', 'F')
y <- c(3, 6, 7, 8, 14, 19)
#attempt to create scatterplot
plot(x, y)
Error in plot.window(...): need finite 'xlim' values
We ontvangen een foutmelding omdat de vector die we hebben gebruikt voor de x-aswaarden een karaktervector is.
Om deze fout op te lossen, hoeven we alleen maar een numerieke vector aan de x-as toe te voegen:
#define two numeric vectors
x <- c(1, 2, 3, 4, 5, 6)
y <- c(3, 6, 7, 8, 14, 19)
#create scatterplot
plot(x, y)
We kunnen het spreidingsdiagram zonder fouten maken omdat we een numerieke vector voor de x-as hebben opgegeven.
Voorbeeld 2: Fout met de NA-waardevector
Stel dat u een spreidingsdiagram probeert te maken met behulp van de volgende code:
#define data
x <- c(NA, NA, NA, NA, NA, NA)
y <- c(3, 6, 7, 8, 14, 19)
#attempt to create scatterplot
plot(x, y)
Error in plot.window(...): need finite 'xlim' values
We ontvangen een foutmelding omdat de vector die we hebben gebruikt voor de x-aswaarden een vector is met alleen NA-waarden.
Om deze fout op te lossen, hoeven we alleen maar een numerieke vector aan de x-as toe te voegen:
#define two numeric vectors
x <- c(1, 5, 9, 13, 19, 22)
y <- c(3, 6, 7, 8, 14, 19)
#create scatterplot
plot(x, y)
Opnieuw konden we een foutloos spreidingsdiagram maken, omdat we een numerieke vector voor de x-as gebruikten.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende fouten in R kunt oplossen:
Hoe u een R-fout kunt oplossen: onverwachte tekenreeksconstante
Hoe R-fout op te lossen: discrete waarde verstrekt op continue schaal
Hoe R-fout op te lossen: Argument is noch numeriek noch logisch: retourneert na