MATLAB Answers

Increase the resolution of contour

27 views (last 30 days)
H ZETT M
H ZETT M on 7 Jun 2017
Commented: Mr. 206 on 22 Nov 2018
Hello, so I tried to plot a coast line with contour. All I did is: Loading the Data (blue=1 is land, green=0 is water) and
C=contour(U,[1 1],'r');
which gave me this image. It is fine for the coast, but is there any way to get a better resolution for the island ? It seems to be really off at some points.

  0 Comments

Sign in to comment.

Answers (1)

Asif Iqbal
Asif Iqbal on 7 Jun 2017
I had a kind of similar problem with some discreat data so what I did was use linspace function to create some equally spaced data in between the collected data to create more resolution. The problem being these are manually increased resolution. Theoretically speaking you can't get higher resolution if you don't have the data. So you have to make some. I am giving my algorithm may be you can take a similar approach to generate your code.
d1=rand(50,1); % your data
d2=zeros(500,1); % generated higher resolution data
for i=0:length(d1)-2
d2(i*10+1:((i*10)+10)) = linspace(d1(i+1),d1(i+2),10);
end
d2(491:500)=linspace(d1(end),d1(end),10);
May be you can have an idea how to do yours from this.

  3 Comments

H ZETT M
H ZETT M on 7 Jun 2017
Well this does not really help me. With your method I'd simply get more points, but this does not make the contour lines better (since they still wouldn't fit). but thanks for answering me.
Asif Iqbal
Asif Iqbal on 7 Jun 2017
In that case I guess spline might help . Use it to round up the in-between data, not just few more points.
Mr. 206
Mr. 206 on 22 Nov 2018
Can you please explain how create this data resolution?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!