3d graph showing reconstruction error
3 views (last 30 days)
Show older comments
Question :
I want to plot 3 axis giving me 3d graph ! One axis is error, second is number of iteration, 3rd is % of missing sample
My Conjugate gradient based algorithm is giving me fully reconstructed sample i put in the signal missing samples.
So assuming this is my example
A= signal with missing sample
P=% of missing samples in A
b=reconstructed signal
n=number of iteration
e=error
so i put in signal with 512 samples with 5% missing samples and it takes 20 iteration with say 0.002 as error...
now i will increase the missing part to 10% and it will obviously take more iteration and error may be increase depending on missing samples.
I want to do it from 5% till 70% missing samples...
Looking for your ideas for input
Cheerr
kk
0 Comments
Accepted Answer
Andrew Newell
on 13 May 2011
If I understand your question, you have two input variables, P and n, and a result e = e(P,n). So you create a grid of values for P and n using meshgrid, then calculate e for each pair P(i),n(j). If the resulting error is a smooth function of the inputs, you could plot it using
surf(P,n,e)
or use contour. If it's not so smooth, you might prefer to use imagesc.
EDIT: To clarify, you need a loop something like this:
p = 5:5:70;
n = 20:20:200;
[P,N] = meshgrid(p,n);
e = 0*P; % just an initialization
for i=1:numel(P)
e(i) = simulateAndReturnError(P(i),N(i));
end
surf(P,N,e) % or imagesc(p,n,e)
4 Comments
Andrew Newell
on 14 May 2011
What you plot depends on how you index errormatrix (which is why I provided the code). You should make sure that errormatrix(i,j) corresponds to P(j) and I(i), e.g., errormatrix(100,2) is for 100 iterations and your second parameter. If it's the other way around, use:
surf(X,Y,errormatrix')
More Answers (0)
See Also
Categories
Find more on Fourier Analysis and Filtering in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!