R语言一箭绘心

如何利用R语言中的arrows进行心的绘制。

大家好,今天是情人节,给大家,尤其是男同胞,安利一个撩妹的技巧。

就是利用R语言画心(或者叫牙签插桃也行)。大家先不要慌,虽然网上有很多画心的方法,但是小编跟大家保证,我这个方法绝对原创,而且还是最为简单的。biocc_85f687a9_b896_4d9e_a127_0167485029

首先跟大家说下arrows这个函数。因为接下来这个心都是利用这个函数绘制的。


了解下这个函数。

  arrows(x0, y0, x1 = x0, y1 = y0, length = 0.25, angle = 30,
 code = 2, col = par("fg"), lty = par("lty"), lwd = par("lwd"), ...) 

其实很简单,我们只需要知道这个函数是画箭头的,并且其重要的参数有坐标,包括起始和终止。另外还有箭头的长度还有箭头的角度。这里箭头的长度和角度是画心得关键。

第一步绘制一个空白的桌布

plot(1:10,col="white",axes=FALSE, xlab = " ",  ylab = " ")

第二步绘制桃型心

for(i in 1:180)

{

 arrows(5,7,5,7.1,col="red",length =i/100, angle =180-i)

}

其中在箭头的长度和角度这里进行循环,这用循环180次,角度就正好变了一圈。然后长度也正好由短变到最长。也就实现了心的绘制。样子如下


biocc_3a431884_d6aa_424f_9358_1a7779bfe6

其动态效果如下

biocc_9f91d765_83a1_4ee8_a534_958af3a3d5

第三步绘制箭头

arrows(2,8,7,4,col="red",lwd=2)

k=-0.8

biocc_2b2eebdc_0005_44a6_9a2a_94695eb5c4

第四步绘制箭头上的羽毛

for(i in 1:10)

{

 len=i/10

 arrows(2,8,2+len,8-0.8*len,col="red")##这里是重点,大家自己悟

}

然后完成。

biocc_8f569130_aa5c_49a4_9d40_01499b45d6


  • 发表于 2017-03-28 20:38
  • 阅读 ( 5045 )
  • 分类:软件工具

0 条评论

请先 登录 后评论
不写代码的码农
SXR

44 篇文章

作家榜 »

  1. 祝让飞 118 文章
  2. 柚子 91 文章
  3. 刘永鑫 64 文章
  4. admin 57 文章
  5. 生信分析流 55 文章
  6. SXR 44 文章
  7. 张海伦 31 文章
  8. 爽儿 25 文章