View source: R/ArcSliceFunctions.R
| plotASarcs.tri | R Documentation |
Plots the arcs of AS-PCD whose vertices are the data points, Xp
and also the triangle tri.
AS proximity regions are constructed
with respect to the triangle tri,
i.e., only for Xp points inside the triangle tri.
If there are duplicates of Xp points,
only one point is retained for each duplicate value,
and a warning message is printed.
Vertex regions are based on the center, M=(m_1,m_2) in Cartesian coordinates
or M=(\alpha,\beta,\gamma) in barycentric coordinates
in the interior of the triangle tri
or based on circumcenter of tri;
default is M="CC", i.e., circumcenter of tri.
When the center is the circumcenter, CC,
the vertex regions are constructed based on the
orthogonal projections to the edges,
while with any interior center M,
the vertex regions are constructed using the extensions
of the lines combining vertices with M.
See also (\insertCiteceyhan:Phd-thesis,ceyhan:comp-geo-2010,ceyhan:mcap2012;textualpcds).
plotASarcs.tri(
Xp,
tri,
M = "CC",
asp = NA,
main = NULL,
xlab = NULL,
ylab = NULL,
xlim = NULL,
ylim = NULL,
vert.reg = FALSE,
...
)
Xp |
A set of 2D points which constitute the vertices of the AS-PCD. |
tri |
Three 2D points, stacked row-wise, each row representing a vertex of the triangle. |
M |
The center of the triangle.
|
asp |
A |
main |
An overall title for the plot (default= |
xlab, ylab |
Titles for the |
xlim, ylim |
Two |
vert.reg |
A logical argument to add vertex regions to the plot,
default is |
... |
Additional |
A plot of the arcs of the AS-PCD for a 2D data set Xp
where AS proximity regions
are defined with respect to the triangle tri;
also plots the triangle tri
Elvan Ceyhan
plotASarcs, plotPEarcs.tri, plotPEarcs,
plotCSarcs.tri, and plotCSarcs
A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
Tr<-rbind(A,B,C);
n<-10
set.seed(1)
Xp<-runif.tri(n,Tr)$g #try also Xp<-cbind(runif(n,1,2),runif(n,0,2))
M<-as.numeric(runif.tri(1,Tr)$g) #try also #M<-c(1.6,1.2)
plotASarcs.tri(Xp,Tr,M,main="Arcs of AS-PCD",xlab="",ylab="")
plotASarcs.tri(Xp,Tr,M,main="Arcs of AS-PCD",xlab="",ylab="",vert.reg = TRUE)
# or try the default center
#plotASarcs.tri(Xp,Tr,asp=1,main="arcs of AS-PCD",xlab="",ylab="",vert.reg = TRUE);
#M = (arcsAStri(Xp,Tr)$param)$c #the part "M = as.numeric(arcsAStri(Xp,Tr)$param)" is optional,
#for the below annotation of the plot
#can add vertex labels and text to the figure (with vertex regions)
#but first we need to determine whether the center used for vertex regions is CC or not
#see the description for more detail.
CC<-circumcenter.tri(Tr)
if (isTRUE(all.equal(M,CC)) || identical(M,"CC"))
{cent<-CC
D1<-(B+C)/2; D2<-(A+C)/2; D3<-(A+B)/2;
Ds<-rbind(D1,D2,D3)
cent.name<-"CC"
} else
{cent<-M
cent.name<-"M"
Ds<-prj.cent2edges(Tr,M)
}
#now we add the vertex names and annotation
txt<-rbind(Tr,cent,Ds)
xc<-txt[,1]+c(-.02,.02,.02,.01,.05,-0.03,-.01)
yc<-txt[,2]+c(.02,.02,.02,.07,.02,.05,-.06)
txt.str<-c("A","B","C",cent.name,"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.