- Use boundary to get the boundary of your required region.
- Use inpolygon with the generated grid and boundary points to get the points lying inside the area of interest.
- Useing the indices generated from inpolygon, you can get your required points.
Generate (X,Y) grid coordinates from within contour boundary
조회 수: 23 (최근 30일)
이전 댓글 표시
Hi Everyone
I have the (X,Y,Z) coodinates for a contourf plot.
I want to extract sample (X2,Y2) coordinates for a given size within the contour area under the input Z value threshold.
E.g. I only want Z values for Z_threshold = 10. If I input grid_size = 5, I want to get (X2,Y2) points spaced at 5m x 5m within the threshold contourf(X,Y,Z) area.
I can create the right size grid by using linspace, but I don't know how to restrict these coordinates to be only from within the desired contour area though?
load('contour_data.mat','X','Y','Z');
Z_threshold = 10;
grid_size = 20;
Z(Z > Z_threshold )= NaN;
contourf(X,Y,Z);
hold on
x_grid = linspace(min(X(:)), max(X(:)), range(X(:))/grid_size);
y_grid = linspace(min(Y(:)), max(Y(:)), range(Y(:))/grid_size);
[X2,Y2] = meshgrid(x_grid,y_grid);
plot(X2,Y2,'.r');
hold off
I only want (X2,Y2) from within the green circled zone below. Note that (X2,Y2) don't correspond to (X,Y) points.
Thanks for any advice :)
댓글 수: 0
채택된 답변
KSSV
2020년 1월 10일
Refer this link: https://in.mathworks.com/matlabcentral/answers/499017-interpolation-with-non-zero-data-only-when-using-griddata for the same question.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Contour Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!