R中的多边形边界插值
Polygon boundary interpolation in R
我有一个多边形数据框:
顶点坐标:
43740.95 40726.46
43741.36 40720.19
43742.67 40729.28
43743.99 40716.16
43745.52 40730.97
43748.72 40714.19
43748.72 40731.14
43748.72 40714.19
43752.23 40714.76
43752.86 40729.43
43755.27 40716.68
43756.77 40723.24
43757.19 40719.73
R 中有没有什么方法可以对空间对象进行插值,使边界更平滑?
您可以使用 smoothr 包来平滑 sf 对象。我根据您的数据创建了一个示例,其中 data
是您提供的样本。因为您的多边形是不规则形状,所以平滑处理看起来也不规则。您可以根据需要调整平滑度或更改平滑算法。但是,样条曲线可能适用于您的情况。
library(sf)
library(smoothr)
smooth_poly <- data %>%
st_as_sf(coords=c("x", "y")) %>%
st_union() %>%
st_convex_hull() %>%
smooth(method='spline', n=1000)
我有一个多边形数据框:
顶点坐标:
43740.95 40726.46
43741.36 40720.19
43742.67 40729.28
43743.99 40716.16
43745.52 40730.97
43748.72 40714.19
43748.72 40731.14
43748.72 40714.19
43752.23 40714.76
43752.86 40729.43
43755.27 40716.68
43756.77 40723.24
43757.19 40719.73
R 中有没有什么方法可以对空间对象进行插值,使边界更平滑?
您可以使用 smoothr 包来平滑 sf 对象。我根据您的数据创建了一个示例,其中 data
是您提供的样本。因为您的多边形是不规则形状,所以平滑处理看起来也不规则。您可以根据需要调整平滑度或更改平滑算法。但是,样条曲线可能适用于您的情况。
library(sf)
library(smoothr)
smooth_poly <- data %>%
st_as_sf(coords=c("x", "y")) %>%
st_union() %>%
st_convex_hull() %>%
smooth(method='spline', n=1000)