31. Dezember 2016
Mit R kann man nicht nur Statistik und Weihnachtsbäume darstellen, man kann auch Feuerwerke erscheinen lassen. Mit einem Loop und einigen Zufallsvariablen erscheinen endlos viele Feuerwerke.
library(ggplot2)
rm(list = ls())
t1 = (1:60)
# while(T){ # for an endless loop
for(i in 1:100){ # 5 min
size1 = runif(1, 1.5, 4)
r1_center = c(runif(1,-5,5),runif(1,7,12))
rocket1 = data.frame(x1 = rep(r1_center[1], length(t1))
, x2 = size1*cos(t1) + r1_center[1]
, y1 = rep(r1_center[2], length(t1))
, y2 = size1*sin(t1) + r1_center[2]
)
col = rgb(runif(1),runif(1),runif(1))
# Plot fireworks
print(ggplot() +
theme(panel.background = element_rect(fill = '#252525', colour = '#252525'),
panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
axis.line=element_blank(),axis.text.x=element_blank(),
axis.text.y=element_blank(),axis.ticks=element_blank(),
axis.title.x=element_blank(),
axis.title.y=element_blank(),legend.position="none") +
xlim(-10,10) + ylim(0,20) +
geom_point(aes(x = x2, y = y2), data = rocket1, shape = 4, colour = col)+
geom_curve(linetype="dashed",aes(x = x1, y = y1, xend = x2, yend = y2 ),
curvature = 0.1, data = rocket1, colour = col))
Sys.sleep(3)
}
Ein Teil des Codes habe ich von Fireworks (in R) übernommen.