用數(shù)據(jù)可視化之美逼死密集恐懼癥

大數(shù)據(jù)

作者:真依然很拉風(fēng)

事情起因是這樣的:在某個(gè)搞技群里有人發(fā)了一個(gè)11維的蜜汁微笑矩陣用來逼死密集恐懼癥——

大數(shù)據(jù)

11*11蜜汁微笑矩陣

于是有人用一個(gè)[擦汗]的表情表示無語……
可是僅僅一個(gè)表情,怎么能以對等的氣勢懟回去呢?于是——

emoji = '[擦汗]'for i in range(11):    print(emoji*(i+1))

大數(shù)據(jù)

11維下三角擦汗

不過考慮到這種方法只能把表情按離散整數(shù)的序列來放置,還不能在任意的連續(xù)數(shù)值處放表情。考慮到R中的ggimage包可以用圖片來代替散點(diǎn),于是一個(gè)思路就是畫散點(diǎn)(曲線)圖,然后用表情來代換散點(diǎn)。

然后,升級版的逼死密集恐懼癥圖形就新鮮出爐了——

正弦式笑哭

library(ggplot2)library(ggimage)showtext::showtext.auto(enable = T)theme1 <-   theme(panel.background = element_rect(fill = "black",color = "black"),plot.background = element_rect(fill="black",color = "black"),panel.grid = element_blank(),plot.title = element_text(hjust=0.5,family = "SimHei",size = 24,color = "#FEFEFE"),                  axis.text = element_blank(),axis.ticks = element_blank())# 正弦曲線x <- seq(from=0,to=2*pi,length.out = 80)y <- sin(x)df_sin <- data.frame(x = x,y=y)ggplot(df_sin,aes(x,y))+  geom_emoji(aes(image='1f602'))+  labs(x= "",y="",title="正弦式笑哭")+  theme1

大數(shù)據(jù)

正弦式笑哭

邏輯回歸式笑哭

# sigmoid曲線sigmoid <- function(x) return(1/(1+exp(-x)))x <- seq(from=-10,to=10,length.out = 100)y <- sigmoid(x)df_sigmoide <- data.frame(x = x,y=y)ggplot(df_sigmoide,aes(x,y))+  geom_emoji(aes(image='1f602'))+  labs(x= "",y="",title="邏輯回歸式笑哭")+  theme1

大數(shù)據(jù)

邏輯回歸式笑哭

正態(tài)分布式笑哭

# 正態(tài)密度曲線x <- seq(-5,5,length.out = 100)y <- dnorm(x)df_norm <- data.frame(x = x,y=y)ggplot(df_norm,aes(x,y))+  geom_emoji(aes(image='1f602'))+  labs(x= "",y="",title="正態(tài)分布式笑哭")+  theme1

大數(shù)據(jù)

正態(tài)分布式笑哭

愛心式笑哭

# 心形曲線t <- seq(0,2*pi,length.out = 100)x <- 16*(sin(t)^3)y <- 13*cos(t) - 5*cos(2*t) - 2*cos(3*t)-cos(4*t)df_heart <- data.frame(x=x,y=y)ggplot(df_heart,aes(x=x,y=y))+  geom_emoji(aes(image='1f602'))+  labs(x= "",y="",title="愛心式笑哭")+  theme1

大數(shù)據(jù)

愛心式笑哭

眾星捧月式笑哭

# 弧形x <- seq(-10,10,length.out=40)r <- 10y <- -sqrt(r^2-x^2)df_cirle <- data.frame(x = c(x,0), y = c(y,5),z=2)df_cirle$z[nrow(df_cirle)] <- 16ggplot()+  geom_emoji(data=df_cirle,mapping=aes(x=x,y=y,image='1f602',size=z))+  scale_y_continuous(limits = c(-10,12))+  scale_size_area(max_size = 0.3)+  labs(x= "",y="",title="眾星捧月式笑哭")+  guides(size=F)+  theme1

大數(shù)據(jù)

眾星捧月式笑哭

囧式笑器

x <- seq(-10,10,length.out = 100)y <- 2/(x^2-2)shift <- 3x1 <- rep(seq(min(x)-shift,max(x)+shift,length.out = 150),2)y1 <- c(rep(min(y)-shift,150),rep(max(y)+shift,150))x2 <-  c(rep(min(x)-shift,150),rep(max(x)+shift,150))y2 <- rep(seq(min(y)-shift,max(y)+shift,length.out = 150),2)df_orz <- data.frame(x=c(x,x1,x2),y=c(y,y1,y2))ggplot(df_orz,aes(x=x,y=y))+  geom_emoji(aes(image='1f602'))+  labs(x= "",y="",title="囧式笑哭")+  theme1

大數(shù)據(jù)

囧式笑哭

金拱門式笑哭

# 金拱門x <- seq(0,2*pi,length.out = 100)y <- abs(sin(x))df_m <- data.frame(x=x,y=y)ggplot(df_m,aes(x=x,y=y))+  geom_emoji(aes(image='1f602'))+  labs(x= "",y="",title="金拱門式笑哭")+  theme1

大數(shù)據(jù)

金拱門式笑哭

四葉草式笑哭

# 四葉草x <- seq(0,2*pi,length.out = 100)y <- cos(4*x)df_flower <- data.frame(x=x,y=y)ggplot(df_flower,aes(x,y))+  geom_line()+  geom_emoji(aes(image='1f602'))+  coord_polar()+  labs(x= "",y="",title="四葉草式笑哭")+  theme1

大數(shù)據(jù)

四葉草式笑哭

萬花筒式笑哭

# 萬花筒式笑哭get_circle <- function(r){  t <- seq(-r,r,length.out = 50*sqrt(r))  x <- rep(t,2)  y <- c(sqrt(r^2-t^2),-sqrt(r^2-t^2))  df <- data.frame(x=x,y=y)  return(df)}df_circle <- data.frame(x=NULL,y=NULL)layer <- 11for(i in 1:layer){  df_circle <- rbind(df_circle,get_circle(i))}ggplot()+  geom_emoji(data = df_circle,aes(x,y,image='1f602'))+  scale_x_continuous(limits = c(-layer,layer))+  labs(x= "",y="",title="萬花筒式笑哭")+  theme1

大數(shù)據(jù)

11階萬花筒式笑哭,是不是比矩陣不知道高到哪去了

無招勝有招式笑哭

# 無招勝有招式笑哭x <- rnorm(10000,mean=0,sd=10)y <- rnorm(10000,mean = 0,sd=10)df_norm <- data.frame(x=x,y=y)ggplot(data = df_norm,mapping = aes(x,y,image='1f602'))+  geom_emoji()+  labs(x= "",y="",title="無招勝有招式笑哭")+  theme1

大數(shù)據(jù)

無招勝有招式笑哭

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進(jìn)一步核實(shí),并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。

2017-11-21
用數(shù)據(jù)可視化之美逼死密集恐懼癥
作者:真依然很拉風(fēng) 事情起因是這樣的:在某個(gè)搞技群里有人發(fā)了一個(gè)11維的蜜汁微笑矩陣用來逼死密集恐懼癥—— 11*11蜜汁微笑矩陣 于是有人用一個(gè)[擦

長按掃碼 閱讀全文