如何绘制通过某些点的平滑曲线

时间:2013-01-13 12:05:42

标签: r plot curve

我有

plot(rnorm(120), rnorm(120), col="darkblue", pch=16, xlim=c(-3,3), ylim=c(-4,4))
points(rnorm(120,-1,1), rnorm(120,2,1), col="darkred", pch=16)
points(c(-1,-1.5,-3), c(4,2,0), pch=3, cex=3)

我想通过绘制一条通过一组点的平滑曲线来描绘图形的一部分。我可以定义3-4组点,但我无法定义一个函数。我想在R(而不是GIMP)中这样做,因为我想提交为SVG。我想要实现的是以下

enter image description here

这可能吗?我知道这不是一个复杂的图形问题,但任何基础R解决方案都可以。

1 个答案:

答案 0 :(得分:19)

如果我理解正确的问题,通过控制点绘制样条曲线应该可以完成这项工作:

xspline(c(-1,-1.5,-3), c(4,2,0), shape = -1)

Should look like that: