作者Cloie (交集与联集的契机)
看板NCCU07_STGRA
标题[闲聊] R可以用来干嘛?
时间Mon Oct 6 23:25:58 2008
哈哈~
送给大家一个双十节礼物~
咱家发现个有趣的东西~
就拿来改改…
发现R可以画" "。
留待给有兴趣的看倌瞧一下
首先,要先下载gridBase这个package。
然後,再复制贴上以下提供给各位的程式。
library(gridBase)
pushViewport(viewport(xscale=c(0,1),yscale=c(0.5,1),clip=TRUE))
res=50
for(i in 1:res)
grid.rect(y=1-(i-1)/res,just="top",gp=gpar(col=NULL,fill=grey(0.5*i/res)))
moon=function(x,y,size){
angle=seq(-90, 90, length=50)/180*pi
x1=x + size*cos(angle)
y1=y + size*sin(angle)
mod=0.8
x2=x + mod*(x1 - x)
grid.polygon(c(x1,rev(x2)),c(y1,rev(y1)),default.unit="native",
gp=gpar(col=NULL, fill="yellow"))
}
moon(.1,0.9,0.04)
star=function(x,y,size){
x1=c(x,x+size*.1,x+size*.5,x+size*.1,x,x-size*.1,x-size*.5,x-size*.1)+.05
y1=c(y-size,y-size*.1,y,y+size*.1,y+size*.7,y+size*.1,y,y-size*.1)+.05
grid.polygon(x1,y1,default.unit="native",gp=gpar(col=NULL, fill="purple"))
}
star(0.6,0.8,0.02)
star(0.5,0.7,0.02)
star(0.8,0.9,0.02)
star(0.72,0.74,0.02)
star(0.62,0.88,0.02)
grid.circle(runif(20,0.2,1),runif(20,0.6,1),r=0.002,default.unit="native",
gp=gpar(col=NULL,fill="white"))
hill=function(height){
n=100
x=seq(0,1,length=n)
y1=sin(runif(1)+x*2*pi)
y2=sin(runif(1)+x*4*pi)
y3=sin(runif(1)+x*8*pi)
y=0.6+height*((y1+y2+y3)/3)
grid.polygon(c(x,rev(x)),c(y,rep(0,n)),default.unit="native",
gp=gpar(col=NULL,fill="darkgreen"))
}
hill(0.12)
hill(0.06)
rdir=function(n){sample(seq(-45, 45, length=10), n)/180*pi}
grid.text("Sometimes...R is funny!!!颗颗",x=.35, y=.51, just="bottom",
default.unit="native",gp=gpar(col="pink",fontface="italic",
fontsize=20))
popViewport()
grid.rect()
--
开琼筵以坐花,飞羽觞而醉月。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.150.101
※ 编辑: Cloie 来自: 140.119.150.101 (10/06 23:27)
1F:推 kcjojo:你好厉害喔 10/06 23:37
2F:→ Cloie:我根本东抄西抄~哈哈 10/06 23:40
※ lulala530:转录至看板 NCCU08_STGRA 10/06 23:43
3F:推 beyondcloud:R is funny!!!颗颗 10/07 00:28
4F:推 dpupu:我讨厌R(丢) 10/07 02:21