用优雅的配色来缔造图表专业主义~

前天刚恢复状态的小魔方,今天又粗现啦~

很多小伙伴儿问我为啥最近老是偷懒,其实是因为上周期中课程论文缠身(毕竟拖延症嘛总得拖到deadline否则绝不开工~_~)……

不过最近也思考了些东西,关于以后公众号运营方向以及推送内容的。

总觉得以前自己写的东西太过琐碎,纠结于步骤和技巧,而没有任何体系上和理念上的输出;

而再加上自己文风粗陋(毕竟每一篇的错别字用十个手指头都数不完呀)、排版拙劣,还有那么多小伙伴儿不离不弃,肯于点赞,实在是感到惭愧(我一般都很少看自己写的东西的不忍直视哈哈)~

可能之前限于能力和实力,一直在跟着别人的步调走,始终在模仿;再加上自己过于追求数量,在质量上用心不多。

不过现在自我感觉好一些了,开始慢慢的思考一些深度的技巧运用,偶尔也会有一些纯理念的总结。

以后的更新频率打算保持在一周2~3篇左右,但是每一篇的内容会向着综合性、应用性方向转变。当然,关于内容排版和文章封面图都会多花一些心思,尽可能的提升一下阅读体验。

下面是今天的干货~


今天要跟大家分享的是如何在实际图表场景中运用ggtech包的配色及主题,案例是关于全球互联网公司市值比较(数据皆为真实数据,来源于搜狐网)。

因为基础的ggplot2语法已经介绍过了,这里我就不介绍具体步骤了,直接使用最终调试好的代码。

加载包:

library("ggplot2")
library("ggtech")

数据导入:

mydata <- read.table("clipboard", header = T, sep = '\t')
newdata<-mydata[1:5,]

柱形图(全球市值top5互联网公司 )

数据截止2015年,单位:十亿美元

Airbnb风格:


ggplot(newdata,aes(reorder(Name,-Value),Value,fill=Name))+geom_bar(stat="identity")+
      theme_tech(theme="airbnb") + 
      scale_fill_tech(theme="airbnb") +
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      theme(axis.title = element_blank(),
      legend.position=c(0.85,0.8)
      )

Esty风格:

ggplot(newdata,aes(reorder(Name,-Value),Value,fill=Name))+geom_bar(stat="identity")+
      theme_tech(theme="etsy") + 
      scale_fill_tech(theme="etsy") +
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      theme(axis.title = element_blank(),
      legend.position=c(0.85,0.8)
      )

Fackbook风格:

ggplot(newdata[1:4,],aes(reorder(Name,-Value),Value,fill=Name))+geom_bar(stat="identity")+
      theme_tech(theme="facebook") +
      scale_fill_tech(theme="facebook") + 
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      theme(axis.title = element_blank(),
      legend.position=c(0.85,0.8)
      )

Google风格:

ggplot(newdata[1:4,],aes(reorder(Name,-Value),Value,fill=Name))+geom_bar(stat="identity")+
      theme_tech(theme="google") + 
      scale_fill_tech(theme="google") + 
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      theme(axis.title = element_blank(),
      legend.position=c(0.85,0.8)
      )

Twitter风格:

ggplot(newdata[1:4,],aes(reorder(Name,-Value),Value,fill=Name))+geom_bar(stat="identity")+
      theme_tech(theme="twitter") + 
      scale_fill_tech(theme="twitter") + 
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      theme(axis.title = element_blank(),
      legend.position=c(0.85,0.8)
      )

以下用饼图来呈现前五大互联网公司的相对市值大小:

Airbnb风格:

ggplot(newdata,aes(x=1,y=Value,fill=Name))+
      geom_bar(stat="identity",color="white")+
      theme_tech(theme="airbnb") + 
      scale_fill_tech(theme="airbnb") +
      coord_polar(theta = "y",start=0)+
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.text = element_blank(),
           axis.ticks = element_blank(),
           axis.title = element_blank(),
           axis.line=element_blank(),
           legend.position=c(0.1,0.1)
           )

Esty风格:

ggplot(newdata,aes(x=1,y=Value,fill=Name))+
      geom_bar(stat="identity",color="white")+
      theme_tech(theme="etsy") + 
      scale_fill_tech(theme="etsy") +
      coord_polar(theta = "y",start=0)+
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.text = element_blank(),
           axis.ticks = element_blank(),
           axis.title = element_blank(),
           axis.line=element_blank(),
           legend.position=c(0.1,0.1)
           )

Fackbook风格:

ggplot(newdata[1:4,],aes(x=1,y=Value,fill=Name))+
      geom_bar(stat="identity",color="white")+
      theme_tech(theme="facebook") +
      scale_fill_tech(theme="facebook") + 
      coord_polar(theta = "y",start=0)+
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.text = element_blank(),
           axis.ticks = element_blank(),
           axis.title = element_blank(),
           axis.line=element_blank(),
           legend.position=c(0.1,0.1)
           )

Google风格:

ggplot(newdata[1:4,],aes(x=1,y=Value,fill=Name))+
      geom_bar(stat="identity",color="white")+
      theme_tech(theme="google") + 
      scale_fill_tech(theme="google") + 
      coord_polar(theta = "y",start=0)+
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.text = element_blank(),
           axis.ticks = element_blank(),
           axis.title = element_blank(),
           axis.line=element_blank(),
           legend.position=c(0.1,0.1)
           )

Twitter风格:

ggplot(newdata[1:4,],aes(x=1,y=Value,fill=Name))+
      geom_bar(stat="identity",color="white")+
      theme_tech(theme="twitter") + 
      scale_fill_tech(theme="twitter") + 
      coord_polar(theta = "y",start=0)+
      labs(title="Top5 Internet Companies", 
      subtitle="Market value of Internet Co in 2015",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.text = element_blank(),
           axis.ticks = element_blank(),
           axis.title = element_blank(),
           axis.line=element_blank(),
           legend.position=c(0.1,0.1)
           )

接下来用国内BAT三巨头的连续7年市值数据制作堆积的粗边面积图:

数据来源于http://www.14du.com/ 截止2015年,单位:亿美元

导入数据:

mynewdata <- read.table("clipboard", header = T, sep = '\t')

使用reshape2包进行转置塑性:

library("reshape2")
newmydata <- melt(mynewdata, id.vars = c("Year"),variable.name = "Name", value.name = "Value")

粗边面积图:

Airbnb风格:

ggplot(newmydata,aes(Year,Value,group=Name,fill=Name))+
      geom_area(position="stack")+
      geom_line(col="grey60",size=2,position="stack")+
      theme_tech(theme="airbnb") + 
      scale_fill_tech(theme="airbnb") +
      labs(title="Three Big Giant of Internet Companies in China", 
      subtitle="Market value of Internet Co in China",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.title = element_blank(),
           legend.position=c(0.2,0.6)
           )

Esty风格:

ggplot(newmydata,aes(Year,Value,group=Name,fill=Name))+
      geom_area(position="stack")+
      geom_line(col="grey60",size=2,position="stack")+
      theme_tech(theme="etsy") + 
      scale_fill_tech(theme="etsy") +
      labs(title="Three Big Giant of Internet Companies in China", 
      subtitle="Market value of Internet Co in China",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.title = element_blank(),
           legend.position=c(0.2,0.6)
           )

Fackbook风格:

ggplot(newmydata,aes(Year,Value,group=Name,fill=Name))+
      geom_area(position="stack")+
      geom_line(col="grey60",size=2,position="stack")+
      theme_tech(theme="facebook") +
      scale_fill_tech(theme="facebook") +
      labs(title="Three Big Giant of Internet Companies in China", 
      subtitle="Market value of Internet Co in China",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.title = element_blank(),
           legend.position=c(0.2,0.6)
           )

Google风格:

ggplot(newmydata,aes(Year,Value,group=Name,fill=Name))+
      geom_area(position="stack")+
      geom_line(col="grey60",size=2,position="stack")+
      theme_tech(theme="google") + 
      scale_fill_tech(theme="google") + 
      labs(title="Three Big Giant of Internet Companies in China", 
      subtitle="Market value of Internet Co in China",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.title = element_blank(),
           legend.position=c(0.2,0.6)
           )

Twitter风格:

ggplot(newmydata,aes(Year,Value,group=Name,fill=Name))+
      geom_area(position="stack")+
      geom_line(col="orange",size=2,position="stack")+
      theme_tech(theme="twitter") + 
      scale_fill_tech(theme="twitter") + 
      labs(title="Three Big Giant of Internet Companies in China", 
      subtitle="Market value of Internet Co in China",
      caption = "http://www.sohu.com/")+
      guides(fill=guide_legend(title=NULL))+
      theme(
           panel.grid=element_blank(),
           panel.background=element_blank(),
           axis.title = element_blank(),
           legend.position=c(0.2,0.6)
           )

真是不好意思,没有刹住车,糊里糊涂的就写了这么多,也忘记对代码做变量中转了,其实核心代码我就写了三个,其他都是Ctrl+V、Ctrl+V不停地狂点鼠标。

这个ggtech包前天刚分享过的,配色上很惊艳,很有科技范,非常适合用在商业数据分析中,说不定还能给你的领导带来惊喜呢,还等什么呢,赶快来试一试吧!

原文发布于微信公众号 - 数据小魔方(datamofang)

原文发表时间:2016-11-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据挖掘DT机器学习

R语言爬虫初尝试-基于RVEST包学习

在学完coursera的getting and Cleaning data后,继续学习用R弄爬虫网络爬虫。主要用的还是Hadley Wickham开发的rves...

4033
来自专栏牛客网

【360烤面筋】

【每日一语】生存在我们每个人体内的,一到时候,它就会抖掉身上的尘土,慢慢地萌芽开来。——《穿条纹睡衣的男孩》

762
来自专栏牛客网

金蝶java岗 技术面+hr面 面经(略水)

看了那么多大佬的面经,感觉都是可望而不可及,问的题目都挺难。今天我就发份简单点的面经,让大家参考一下这种公司的水平大概都是会问些什么,有所了解。  一面 : ...

5556
来自专栏牛客网

【Java面经】非科班渣硕面经

楼主某末流985渣硕一枚,磕盐不会,偶然接触了下编程,然后又稍微学了学Java,后面就走上了程序猿的道路,今年四月侥幸去菊厂实习了一波(虽然没学到东西)。

1682
来自专栏钱曙光的专栏

一周极客热文:你工作了几年以及待遇大概多少?

本周被盖到400+楼的最最最热门文章是《大家聊聊待遇:工作几年,待遇大概多少??》。由于回复的内容“炒鸡”多,小编也无法很好的整理并得出高大上的结论,我想大家还...

22210
来自专栏大数据

快速数据管道设计:通过交换表更新各个事件决策

在 VoltDB(这是一种数据库) 经常使用到的术语,快速数据管道(Fast data pipeline),这是一种全新的现代应用程序 —— 这种应用程序将流式...

2787
来自专栏牛客网

迟到的贝壳面经

上周末在北京贝壳的一面+二面经历,很遗憾,二面没有通过,与其埋怨面试官问的太深太细,不如找找自己的原因。 

1412
来自专栏牛客网

美团大零售事业群-闪购 一面(已通过)

以前以为坚持就是永不动摇,现在才明白,坚持是犹豫着退缩着心猿意马着,但还在继续往前走。——《意林》

961
来自专栏上善若水

007-golang-GO 编程高手的五个阶段

第一个阶段(菜鸟): 刚刚学习了这门语言。 已经通过一些教程或者培训班了解基本的语法,可以写短的代码片段。

2643
来自专栏java达人

通过人工智能编写自修改/自完善的程序

作者:Kory Becker 译者: Mr派 来源:http://www.primaryobjects.com/2013/01/27/using-artific...

2348

扫码关注云+社区

领取腾讯云代金券