當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。