当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R xsplinePoints 返回将用于绘制 Xspline(或 Bezier 曲线)的点


R语言 xsplinePoints 位于 grid 包(package)。

说明

该函数返回用于绘制 X 样条线系列线段的点,而不是绘制 X 样条线(或贝塞尔曲线)。这对于 post-process X 样条曲线可能有用,例如,用于裁剪曲线。

用法

xsplinePoints(x)
bezierPoints(x)

参数

x

xsplineGrob() 函数生成的 Xspline grob(或由 bezierGrob() 函数生成的 beziergrob)。

细节

此函数返回的点仅与调用此函数时有效的绘图上下文相关。

取决于要绘制多少条 X 样条线。如果只有一个,则包含两个组件的列表,名为 x 和 y,这两个组件都是单位对象(以英寸为单位)。如果要绘制多个 Xsplines,则此函数的结果是一个列表的列表。

例子

grid.newpage()
xsg <- xsplineGrob(c(.1, .1, .9, .9), c(.1, .9, .9, .1), shape=1)
grid.draw(xsg)
trace <- xsplinePoints(xsg)
grid.circle(trace$x, trace$y, default.units="inches", r=unit(.5, "mm"))

grid.newpage()
vp <- viewport(width=.5)
xg <- xsplineGrob(x=c(0, .2, .4, .2, .5, .7, .9, .7),
                  y=c(.5, 1, .5, 0, .5, 1, .5, 0),
                  id=rep(1:2, each=4),
                  shape=1,
                  vp=vp)
grid.draw(xg)
trace <- xsplinePoints(xg)
pushViewport(vp)
invisible(lapply(trace, function(t) grid.lines(t$x, t$y, gp=gpar(col="red"))))
popViewport()

grid.newpage()
bg <- bezierGrob(c(.2, .2, .8, .8), c(.2, .8, .8, .2))
grid.draw(bg)
trace <- bezierPoints(bg)
grid.circle(trace$x, trace$y, default.units="inches", r=unit(.5, "mm"))

作者

Paul Murrell

也可以看看

xsplineGrobbezierGrob

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Return the points that would be used to draw an Xspline (or a Bezier curve)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。