Compute error between two graphs, each graph contains point data forming multiple curves.

I have a experimental x-y data which forms multiple intersecting and non-intersecting curves. I then have another x-y data which comes from simulation containing similar x-y data. How to I compute the error between those two graph. In the end, I want to match the experimental x-y data with the simulation x-y data.

5 comentarios

Matt J
Matt J el 8 de En. de 2023
Editada: Matt J el 8 de En. de 2023
Are the number of data points in each set of (x,y) data the same? Do the x-coordinate data match for all data sets?
No, the datasets are different. Each dataset when plotted looks like multiple overlapping curves. What I want to know is if I have two different dataset, how close are they to each other, or in other words, do they match with each other. The trend should match, one dataset can have sparse points as compared to other.
Here is the example of two sample data set I want to correlate.
FYI: The data cannot be upsampled or downsampled as the dataset length varies for eah dataset
Very well, then please comment on one or both of the answers below.

Iniciar sesión para comentar.

Respuestas (2)

Matt J
Matt J el 8 de En. de 2023
Editada: Matt J el 8 de En. de 2023
You can use pdist2,
Error=vecnorm( pdist2([x1,y1] ,[x2,y2],'euc','Smallest',1) )
There are a few ways to do it.
x=linspace(0, 2*pi);
f = 3.5*sin(2*x); % Fit model
y = f+randn(size(x)); % Experimental data
scatter(x,y), hold on
plot(x,f, 'k-'), grid on
df = abs(f)-abs(y); % The difference (Error)
figure
plot(1:numel(x), df)
title('Error')
ylabel('Error')
xlabel('Data orders')
grid on

Categorías

Más información sobre Statistics and Machine Learning Toolbox en Centro de ayuda y File Exchange.

Preguntada:

el 8 de En. de 2023

Comentada:

el 20 de En. de 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by