Простое скрытие точек ваших данных кажется сомнительным, но это решение делает то, что вы описываете, получая координаты точек вне корпуса от объекта ahull
и накладывает точки на невидимые. При этом вам не нужно изменять входные данные или объект ahull
.
library(alphahull)
lim=5
mat <- matrix(data=rnorm(1000), ncol=2)
some_hull = ahull(mat, alpha=0.5)
plot(some_hull, xlim = c(-lim,lim), ylim = c(-lim,lim))
Ar c объект ahull$arcs
содержит указатель в третьем столбце, точки которого находятся за пределами корпуса. Вы можете использовать эти координаты и просто наложить немного большие невидимые точки, чтобы скрыть исходные, без необходимости изменять входные данные или объект.
non_members <- some_hull$arcs[which(some_hull$arcs[, 3] == 0), 1:2]
plot(some_hull, xlim = c(-lim,lim), ylim = c(-lim,lim))
points(non_members, col="white", pch=19, cex=1.2)