View source: R/ArcSliceFunctions.R
| plotASregs.tri | R Documentation |
Plots the points in and outside of the triangle tri and also the AS proximity regions
for points in data set Xp.
AS proximity regions are defined with respect to the triangle tri,
so AS proximity regions are defined only for points inside the triangle tri and
vertex regions are based on the center M="CC" for
circumcenter of tri; or M=(m_1,m_2) in Cartesian coordinates or M=(\alpha,\beta,\gamma) in barycentric
coordinates in the interior of the triangle tri; default is M="CC" the circumcenter of tri.
When vertex regions are constructed with 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).
plotASregs.tri(
Xp,
tri,
M = "CC",
main = NULL,
xlab = NULL,
ylab = NULL,
xlim = NULL,
ylim = NULL,
vert.reg = FALSE,
...
)
Xp |
A set of 2D points for which AS proximity regions are constructed. |
tri |
Three 2D points, stacked row-wise, each row representing a vertex of the triangle. |
M |
The center of the triangle. |
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 |
Plot of the AS proximity regions for points inside the triangle tri (and only the points outside tri)
Elvan Ceyhan
plotASregs, plotPEregs.tri, plotPEregs,
plotCSregs.tri, and plotCSregs
## Not run:
A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
Tr<-rbind(A,B,C);
n<-10
set.seed(1)
Xp0<-runif.tri(n,Tr)$g
M<-as.numeric(runif.tri(1,Tr)$g) #try also #M<-c(1.6,1.2);
plotASregs.tri(Xp0,Tr,M,main="Proximity Regions for AS-PCD", xlab="",ylab="")
Xp = Xp0[1,]
plotASregs.tri(Xp,Tr,M,main="Proximity Regions for AS-PCD", xlab="",ylab="")
#can plot the arcs of the AS-PCD
#plotASarcs.tri(Xp,Tr,M,main="Arcs of AS-PCD",xlab="",ylab="")
plotASregs.tri(Xp,Tr,M,main="Proximity Regions for AS-PCD", xlab="",ylab="",vert.reg=TRUE)
# or try the default center
#plotASregs.tri(Xp,Tr,main="Proximity Regions for 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)
#Arcs<-arcsAStri(Xp,Tr,M)
#M = as.numeric(Arcs$parameters)
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,.03,.03,.03,.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)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.