| kfr2vertsCCvert.reg | R Documentation |
k furthest points in a data set from vertices
in each CC-vertex region in a triangleAn object of class "Extrema".
Returns the k furthest data points among the data set, Xp,
in each CC-vertex region from the vertex in the
triangle, tri=T(A,B,C), vertices are stacked row-wise.
Vertex region labels/numbers correspond to the
row number of the vertex in tri.
ch.all.intri is for checking
whether all data points are inside tri (default is FALSE).
If some of the data points are not inside tri
and ch.all.intri=TRUE, then the function yields
an error message.
If some of the data points are not inside tri
and ch.all.intri=FALSE, then the function yields
the closest points to edges
among the data points inside tri (yields NA if there are no data points
inside tri).
In the extrema, ext, in the output,
the first k entries are the k furthest points from vertex 1,
second k entries are k furthest points are from vertex 2, and
last k entries are the k furthest points from vertex 3.
If data size does not allow, NA's are inserted
for some or all of the k furthest points for each vertex.
kfr2vertsCCvert.reg(Xp, tri, k, ch.all.intri = FALSE)
Xp |
A set of 2D points representing the set of data points. |
tri |
A |
k |
A positive integer. |
ch.all.intri |
A logical argument (default= |
A list with the elements
txt1 |
Vertex labels are |
txt2 |
A shorter description of the distances
as |
type |
Type of the extrema points |
desc |
A short description of the extrema points |
mtitle |
The |
ext |
The extrema points, here, |
X |
The input data, |
num.points |
The number of data points, i.e., size of |
supp |
Support of the data points, it is |
cent |
The center point used for construction of vertex regions |
ncent |
Name of the center, |
regions |
Vertex regions inside the triangle, |
region.names |
Names of the vertex regions
as |
region.centers |
Centers of mass of the vertex regions
inside |
dist2ref |
Distances from |
Elvan Ceyhan
fr2vertsCCvert.reg.basic.tri, fr2vertsCCvert.reg.basic.tri,
fr2vertsCCvert.reg, and fr2edgesCMedge.reg.std.tri
A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
Tr<-rbind(A,B,C);
n<-10 #try also n<-20
k<-3
set.seed(1)
Xp<-runif.tri(n,Tr)$g
Ext<-kfr2vertsCCvert.reg(Xp,Tr,k)
Ext
summary(Ext)
plot(Ext)
Xp2<-rbind(Xp,c(.2,.4))
kfr2vertsCCvert.reg(Xp2,Tr,k)
#try also kfr2vertsCCvert.reg(Xp2,Tr,k,ch.all.intri = TRUE)
kf2v<-Ext
CC<-circumcenter.tri(Tr) #the circumcenter
D1<-(B+C)/2; D2<-(A+C)/2; D3<-(A+B)/2;
Ds<-rbind(D1,D2,D3)
Xlim<-range(Tr[,1],Xp[,1])
Ylim<-range(Tr[,2],Xp[,2])
xd<-Xlim[2]-Xlim[1]
yd<-Ylim[2]-Ylim[1]
plot(A,pch=".",asp=1,xlab="",ylab="",
main=paste(k," Furthest Points in CC-Vertex Regions \n from the Vertices",sep=""),
xlim=Xlim+xd*c(-.05,.05),ylim=Ylim+yd*c(-.05,.05))
polygon(Tr)
L<-matrix(rep(CC,3),ncol=2,byrow=TRUE); R<-Ds
segments(L[,1], L[,2], R[,1], R[,2], lty=2)
points(Xp)
points(kf2v$ext,pch=4,col=2)
txt<-rbind(Tr,CC,Ds)
xc<-txt[,1]+c(-.06,.08,.05,.12,-.1,-.1,-.09)
yc<-txt[,2]+c(.02,-.02,.04,.0,.02,.06,-.04)
txt.str<-c("A","B","C","CC","D1","D2","D3")
text(xc,yc,txt.str)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.