Learn R Programming

pcds (version 0.1.4)

plotCSarcsTri: The plot of the arcs of Central Similarity Proximity Catch Digraph (CS-PCD) for a 2D data set - one triangle case

Description

Plots the arcs of CS-PCD whose vertices are the data points, Xp and the triangle tri. CS proximity regions are constructed with respect to the triangle tri with expansion parameter \(t>0\), i.e., arcs may exist only for Xp points inside the triangle tri.

Edge regions are based on center \(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=(1,1,1)\) i.e., the center of mass of tri.

See also (ceyhan:Phd-thesis,ceyhan:arc-density-CS,ceyhan:test2014;textualpcds).

Usage

plotCSarcsTri(
  Xp,
  tri,
  t,
  M = c(1, 1, 1),
  asp = NA,
  main = "",
  xlab = "",
  ylab = "",
  xlim = NULL,
  ylim = NULL,
  ...
)

Value

A plot of the arcs of the CS-PCD whose vertices are the points in data set Xp and the triangle tri

Arguments

Xp

A set of 2D points which constitute the vertices of the CS-PCD.

tri

Three 2D points, stacked row-wise, each row representing a vertex of the triangle.

t

A positive real number which serves as the expansion parameter in CS proximity region.

M

A 2D point in Cartesian coordinates or a 3D point in barycentric coordinates which serves as a center in the interior of the triangle tri; default is \(M=(1,1,1)\) i.e., the center of mass of tri.

asp

A numeric value, giving the aspect ratio \(y/x\) (default is NA), see the official help page for asp by typing "? asp".

main

An overall title for the plot (default="").

xlab, ylab

Titles for the \(x\) and \(y\) axes, respectively (default="" for both).

xlim, ylim

Two numeric vectors of length 2, giving the \(x\)- and \(y\)-coordinate ranges (default=NULL for both).

...

Additional plot parameters.

Author

Elvan Ceyhan

References

See Also

plotCSarcsMT, plotPEarcsTri and plotASarcsTri

Examples

Run this code
A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
Tr<-rbind(A,B,C);
n<-10  #try also n<-20

set.seed(1)
dat<-runif.tri(n,Tr)$g

M<-as.numeric(runif.tri(1,Tr)$g)  #try also M<-c(1.6,1.0)

t<-1.5  #try also t<-2

dat<-matrix(dat,ncol=2)
Xlim<-range(Tr[,1],dat[,1])
Ylim<-range(Tr[,2],dat[,2])
xd<-Xlim[2]-Xlim[1]
yd<-Ylim[2]-Ylim[1]

Ds<-cp2e.tri(Tr,M)

if (dimension(M)==3) {M<-bary2cart(M,Tr)}
#need to run this when M is given in barycentric coordinates

plotCSarcsTri(dat,Tr,t,M,main="arcs of CS-PCD with t=1.5",xlab="",ylab="",
xlim=Xlim+xd*c(-.05,.05),ylim=Ylim+yd*c(-.05,.05))
L<-rbind(M,M,M); R<-Ds
segments(L[,1], L[,2], R[,1], R[,2], lty=2)

txt<-rbind(Tr,M,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","M","D1","D2","D3")
text(xc,yc,txt.str)

Run the code above in your browser using DataLab