生日快乐程序_祝肖战1005生日快乐-用R给他画个蛋糕爱心吧
生活随笔
收集整理的這篇文章主要介紹了
生日快乐程序_祝肖战1005生日快乐-用R给他画个蛋糕爱心吧
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
大家好,我還是我。那個愛用R搞七搞八除了數據其他都作的數據女工!
在蝦歷新年到來之際,各大平臺上,畫手大大、剪輯大大、天籟大大們紛紛送出美輪美奐驚為天人的生日祝賀。而作為一個數據女工的我只能委屈的抱住了胖胖的自己,留下了為什么要學理工科的委屈的淚水!但是,數據女工決不退縮,我思前想后,決定用我擅長的R為肖戰送出生日祝福!祝新的一歲,肖戰順順利利,萬歲千山總是他,在目光中央光芒萬丈!
這是數據女工的樸素的祝福:
這是數據女工樸素的產出:
好的,下面就是枯燥而不重要的程序了。。。
首先,我們需要load以下package:
require(dplyr) require(ggplot2) require(gglayer)需要注意的是,ggplayer是在github上的大神自己寫的package,需要remote安裝。
install.packages("remotes") remotes::install_github("GuangchuangYu/gglayer")load好R包之后,我們需要先定義一個愛心函數,這個函數很經典,隨便放狗搜搜就有了。我們選取29個數據點,因為是肖戰小哥29歲的生日嘛!
dat<- data.frame(t=seq(0, 2*pi, by=0.2) )%>%filter(!row_number() %in% c(1,31,32))xhrt <- function(t) 16*sin(t)^3yhrt <- function(t) 13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t)dat$y=yhrt(dat$t)dat$x=xhrt(dat$t)with(dat, plot(x,y))畫出來,它長這樣:
如果我們用gglayer里面的geom_cake函數畫以下,它就長這樣:
有了函數以后,我們就來把蛋糕和蠟燭的顏色改成《光點》的主要顏色:
guangdiancolor<- c("#E18786","#E1D1D8","#E5C0C2","#F5C5C1","#7BAAE1")然后讓蛋糕的大小,角度都隨機變化:
dat$color.cake = sample(guangdiancolor, nrow(dat), replace=T) dat$color.candle = sample(guangdiancolor, nrow(dat), replace=T) dat$size = runif(nrow(dat), 0.05, 0.18) dat$angle = runif(nrow(dat), -360, 360)最后,用ggplot畫圖,加上Xiao Zhan Happy Birthday的祝福,移除背景,坐標等元素,就完成了!是不是很簡單呢!
dat%>% ggplot(aes(x, y)) + geom_cake(aes(color.cake=color.cake, color.candle=color.candle, color.fire=color.cake, size=I(size), angle=angle)) +annotate("text", x = 0, y = -3, label = "Xiao Zhann Happy Birthday!",colour = "red", size = 10.05)+theme(legend.position = "none",panel.grid = element_blank(),axis.title = element_blank(),axis.text = element_blank(),axis.ticks = element_blank(),panel.background = element_blank())好了,本數據女工滿足了,吃蛋糕聽歌去了
https://zhuanlan.zhihu.com/p/261711876?zhuanlan.zhihu.com總結
以上是生活随笔為你收集整理的生日快乐程序_祝肖战1005生日快乐-用R给他画个蛋糕爱心吧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Struts2、SpringMVC、Se
- 下一篇: SQL Server-数据类型(七)