MATLAB Answers

How to say that 2 stem graphs are identical?

9 views (last 30 days)
ellis
ellis on 19 Mar 2014
Commented: Star Strider on 20 Mar 2014
Hi, i want to know how to prove that two graphs from pixel images are the same? Thanks for your help

  0 Comments

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 19 Mar 2014
I doubt you could ever prove the two are the same, but statistically you can estimate the probability that they are not different.
Your ‘graph.fig’ file contained all the ‘YData’ information necessary. (This was something of an adventure in handle graphics for me!)
After getting the data:
hs1 = subplot(2,1,1)
hs2 = subplot(2,1,2)
x1d = get(get(hs1,'Children'),'XData');
x2d = get(get(hs2,'Children'),'XData');
y1d = get(get(hs1,'Children'),'YData');
y2d = get(get(hs2,'Children'),'YData');
the easiest statistical test was the correlation coefficient:
[R,P]=corrcoef(y1d, y2d)
that produced:
R = 974.4480e-003
P = 94.3711e-168
or an infinitesimal probability of no correlation.
A chi-squared test between y1d and y2d might yield definitive information because it compares each observation in y1d and y2d, and gives the probability that the ‘patterns’ between them are different. (When I did these calculations, I got chi-square = 1055.5 with 233 degrees-of-freedom, essentially a zero probability that they are different.)

  2 Comments

ellis
ellis on 20 Mar 2014
Thanks you for your help.... Yesterday i have been able to get a percentage match of the 2 graphs and i have used also the corrcoef function.
Thanks for your code ;)

Sign in to comment.

More Answers (1)

Viju
Viju on 19 Mar 2014
If you have the underlying data that created the two stem plots, you can check the difference between the two data. Say you have the vector x and vector y, you can plot x - y and show that the difference is zero (or close to zero).

  0 Comments

Sign in to comment.

Sign in to answer this question.