How can I find nearest value in large grid data?
조회 수: 1 (최근 30일)
이전 댓글 표시
I have a grid having cells 100x60, containing contours data. Some of the cells have filled with whole number from 1 to 15 showing the elevation of contours, now how can I interpolate points between the contours line to fill all empty cells?
Note: Points are not in regular way, these scattered points
댓글 수: 0
답변 (2개)
Walter Roberson
2016년 7월 13일
See John D'Errico's File Exchange contribution "inpaint_nan"
댓글 수: 2
Chad Greene
2016년 7월 14일
If you download inpaint_nans, it makes the problem pretty easy. For example, say you have some gridded dataset like this:
Z = peaks(100);
but a few points are NaNs:
Z([423 898 1234] = NaN;
You can fill in the missing values like this:
Z_filled = inpaint_nans(Z);
Image Analyst
2016년 7월 13일
How about scatteredInterpolant()?
댓글 수: 5
Image Analyst
2016년 7월 13일
I need to leave now, but my first attempt would be to use scatteredInterpolant, like I already suggested. But I'm sure you've tried that by now, so let's see your code - it may speed me up when I return later today. If you didn't try my suggestion, then why not?
Walter Roberson
2016년 7월 13일
YourData(YourData == 0) = nan;
Now call the File Exchange contribution inpaint_nan on YourData.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!