To fix the error "in plot.window(...) : need finite 'ylim' values", you will need to make sure that the y-axis limits (ylim) of your plot are set to finite (i.e., real) values. This error occurs when the y-axis limits are set to Inf (infinity) or NaN (not a number).
There are several ways you can troubleshoot this error:
- Check your data: Make sure that your data does not contain any infinite or missing values. If it does, you will need to handle these values before creating the plot.
- Check the y-axis limits: Make sure that the y-axis limits are set to finite values. You can do this by setting the ylim argument in the plot function to a vector of two finite values, e.g., ylim = c(0, 100).
- Check the plot function arguments: Make sure that you are not setting any other arguments in the plot function that could be causing the y-axis limits to be set to infinity or NaN. For example, if you are using the log="y" argument to plot the y-axis on a log scale, make sure that you are not trying to plot negative or zero values on this scale.
What Is the Rrror "In Plot.Window(...) ?"
The error "in plot.window(...) : need finite 'ylim' values" typically occurs when you are trying to create a plot in R, but the y-axis limits of the plot are not set to finite values. The y-axis limits are the minimum and maximum values that will be displayed on the y-axis of the plot.
There are several common issues that can cause this error to occur:
- Data issues: If your data contains infinite or missing values, it can cause the y-axis limits to be set to Inf or NaN, respectively. Make sure to check your data for any such values and handle them appropriately.
- Plot function arguments: If you are using any arguments in the plot function that could affect the y-axis limits, make sure that they are not causing the y-axis limits to be set to infinity or NaN. For example, if you are using the ylim argument to set the y-axis limits, make sure that the values you are setting are finite.
- Logarithmic scales: If you are using a logarithmic scale for the y-axis (e.g., log="y"), make sure that you are not trying to plot negative or zero values on this scale, as this will cause the y-axis limits to be set to infinity.
Related Links:
How to Fix: Error in plot.window(...) : need finite ‘xlim’ values - Statology
This tutorial explains how to fix the following error in R: Error in plot.window(...) : need finite ‘xlim’ values.

R: need finite ‘ylim’ values in function
I’d like to plot the data in data.frame xy for each group (defined by ID). When a year before 1946 is in a group, plot 2 should be executed. When the years are between 1946 and 2014, plot1 should be
