grid.arrows {grid} | R Documentation |
This will draw arrows at either end of a line or an existing line.to, lines, or segments grob.
grid.arrows(x = c(0.25, 0.75), y = 0.5, default.units = "npc", grob = NULL, angle = 30, length = unit(0.25, "inches"), ends = "last", type = "open", gp = gpar(), draw = TRUE, vp = NULL)
x |
A numeric vector or unit object specifying x-values. |
y |
A numeric vector or unit object specifying y-values. |
default.units |
A string indicating the default units to use
if x or y are only given as numeric vectors. |
grob |
A grob to add arrows to; currently can only be a line.to, lines, or segments grob. |
angle |
A numeric specifying (half) the width of the arrow head (in degrees). |
length |
A unit object specifying the length of the arrow head. |
ends |
One of "first" , "last" , or "both" ,
indicating which end of the line to add arrow heads. |
type |
Either "open" or "closed" to indicate
the type of arrow head. |
gp |
An object of class gpar , typically the output
from a call to the function gpar . This is basically
a list of graphical parameter settings. |
draw |
A logical value indicating whether graphics output should be produced. |
vp |
A Grid viewport object (or NULL). |
If the grob argument is specified, this overrides any x and/or y arguments.
An object of class "grob"
.
Paul Murrell
Grid,
viewport
,
grid.line.to
,
grid.lines
,
grid.segments
push.viewport(viewport(layout=grid.layout(2, 4))) push.viewport(viewport(layout.pos.col=1, layout.pos.row=1)) grid.rect(gp=gpar(col="grey")) grid.arrows() pop.viewport() push.viewport(viewport(layout.pos.col=2, layout.pos.row=1)) grid.rect(gp=gpar(col="grey")) grid.arrows(angle=15, type="closed") pop.viewport() push.viewport(viewport(layout.pos.col=3, layout.pos.row=1)) grid.rect(gp=gpar(col="grey")) grid.arrows(angle=5, length=unit(0.1, "npc"), type="closed", gp=gpar(fill="white")) pop.viewport() push.viewport(viewport(layout.pos.col=4, layout.pos.row=1)) grid.rect(gp=gpar(col="grey")) grid.arrows(x=unit(0:80/100, "npc"), y=unit(1 - (0:80/100)^2, "npc")) pop.viewport() push.viewport(viewport(layout.pos.col=1, layout.pos.row=2)) grid.rect(gp=gpar(col="grey")) grid.arrows(ends="both") pop.viewport() push.viewport(viewport(layout.pos.col=2, layout.pos.row=2)) grid.rect(gp=gpar(col="grey")) # Recycling arguments grid.arrows(x=unit(1:10/11, "npc"), y=unit(1:3/4, "npc")) pop.viewport() push.viewport(viewport(layout.pos.col=3, layout.pos.row=2)) grid.rect(gp=gpar(col="grey")) gs <- grid.segments(x0=unit(1:4/5, "npc"), x1=unit(1:4/5, "npc")) grid.arrows(grob=gs, length=unit(0.1, "npc"), type="closed", gp=gpar(fill="white")) pop.viewport() push.viewport(viewport(layout.pos.col=4, layout.pos.row=2)) grid.rect(gp=gpar(col="grey")) gl <- grid.lines(x=unit(0:80/100, "npc"), y=unit((0:80/100)^2, "npc")) grid.arrows(grob=gl, angle=15, type="closed", gp=gpar(fill="black")) pop.viewport() push.viewport(viewport(layout.pos.col=1, layout.pos.row=2)) grid.move.to(x=0.5, y=0.8) pop.viewport() push.viewport(viewport(layout.pos.col=4, layout.pos.row=1)) glt <- grid.line.to(x=0.5, y=0.2, gp=gpar(lwd=3)) grid.arrows(grob=glt, ends="first", gp=gpar(lwd=3)) pop.viewport(2) grid.edit(gl, y=unit((0:80/100)^3, "npc"))