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


R grid.bezier 绘制贝塞尔曲线


R语言 grid.bezier 位于 grid 包(package)。

说明

这些函数创建并绘制贝塞尔曲线(相对于 4 个控制点绘制的曲线)。

用法

grid.bezier(...)
bezierGrob(x = c(0, 0.5, 1, 0.5), y = c(0.5, 1, 0.5, 0),
            id = NULL, id.lengths = NULL,
            default.units = "npc", arrow = NULL,
            name = NULL, gp = gpar(), vp = NULL)

参数

x

指定样条控制点x-locations的数值向量或单位对象。

y

指定样条控制点y-locations的数值向量或单位对象。

id

用于将 xy 中的位置分成多个贝塞尔曲线的数值向量。所有具有相同 id 的位置都属于同一个贝塞尔曲线。

id.lengths

用于将 xy 中的位置分成多个贝塞尔曲线的数值向量。指定构成单独贝塞尔曲线的连续位置块。

default.units

指示 xy 仅作为数值向量给出时使用的默认单位的字符串。

arrow

说明放置在贝塞尔曲线两端的箭头的列表,由 arrow 函数生成。

name

字符标识符。

gp

"gpar" 的对象,通常是调用函数 gpar 的输出。这本质上是图形参数设置的列表。

vp

网格视口对象(或 NULL)。

...

要传递给 bezierGrob 的参数。

细节

这两个函数都创建一个 beziergrob(说明贝塞尔曲线的图形对象),但只有 grid.bezier 绘制贝塞尔曲线。

贝塞尔曲线是相对于 4 个控制点绘制的线。

xy 不允许缺少值(即,缺少控制点是无效的)。

目前该曲线是使用基于X-splines 的近似值绘制的。

一个抓取对象。

例子

x <- c(0.2, 0.2, 0.4, 0.4)
y <- c(0.2, 0.4, 0.4, 0.2)

grid.newpage()
grid.bezier(x, y)
grid.bezier(c(x, x + .4), c(y + .4, y + .4),
            id=rep(1:2, each=4))
grid.segments(.4, .6, .6, .6)
grid.bezier(x, y,
            gp=gpar(lwd=3, fill="black"),
            arrow=arrow(type="closed"),
            vp=viewport(x=.9))

也可以看看

Gridviewportarrow

grid.xspline

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Draw a Bezier Curve。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。