Source: Mathworks
Overview
The "function value and Ydata sizes are not equal" error message is a common problem in MATLAB. This error occurs when plotting with a function using the plot
function, and it can be caused by a variety of mistakes in data formatting or coding. This article provides an overview of the issue, step-by-step instructions for troubleshooting the issue, and an FAQ section to answer additional questions.
Troubleshooting
These troubleshooting steps will help you identify and resolve the issue.
Check your variables for proper size:
- Make sure that the function or vector you are trying to plot is the same size as the
YData
vector. For example, if your function is a 2 x 1 vector, yourYData
vector should also be a 2 x 1 vector.
Check for missing data:
- Make sure you are passing the right set of data points to the
plot
function. If you are missing data points, it could cause an error.
Check whether the variables are numbers or strings:
- If the function is an array of numbers, make sure the
YData
vector has the same structure and contains numbers as well.
Check the function that is being called:
- Make sure the function argument is valid. The
plot
function only accepts functions that output a single value per given value of the variable.
Check for syntax errors:
- Make sure your code does not contain any syntax errors which could prevent the
plot
function from working correctly.
FAQ
Q: What causes the 'Function value and Ydata sizes are not equal' error?
A: This error is caused by mistakes in data formatting or coding. Common causes include passing the wrong set of data points to the plot
function, passing variables of different sizes to the plot
function, and writing invalid function arguments.
Q: How do I fix the 'Function value and Ydata sizes are not equal' error?
A: To fix the error, follow the troubleshooting steps listed above, such as checking the function and variables for proper size, making sure all data points are included, and checking for syntax errors.