温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

R语言可视化中直方图的介绍及其美化技巧

发布时间:2021-07-23 09:12:17 来源:亿速云 阅读:175 作者:chen 栏目:大数据

这篇文章主要介绍“R语言可视化中直方图的介绍及其美化技巧”,在日常操作中,相信很多人在R语言可视化中直方图的介绍及其美化技巧问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”R语言可视化中直方图的介绍及其美化技巧”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

今天介绍关于直方图的美化技巧!

数据集仍然使用上一节使用到的有关钻石的数据信息。

data(diamonds)

set.seed(42)

small <- diamonds[sample(nrow(diamonds), 1000), ]

head(small)

R语言可视化中直方图的介绍及其美化技巧

以上通过设定随机种子,从diamonds中随机抽取了1000个数据作为我们制作直方图的样本数据(源数据集有点大)。

直方图的做法与我们之前做柱形图(条型图)所使用函数主题语法大致相同,不同仅仅在于添加的图层对象为geom_histogram()

由于直方图呈现数据分布趋势,所以仅需一个数值型变量进入即可。

ggplot(small)+geom_histogram(aes(x=price))

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price))+geom_histogram()

R语言可视化中直方图的介绍及其美化技巧

以上两句直方图语法是等价的,也就是说,无论参数price在ggplot函数中,还是在图层对象geom_histogram括号内,只要是被aes()美学映射包括着,都将作用于全局。

当然如果在直方图参数中添加颜色映射,那么就可以做出堆积直方图。

ggplot(small,aes(price,fill=cut))+geom_histogram()

R语言可视化中直方图的介绍及其美化技巧

当颜色变量(因子变量)进入aes内的时候,默认直方图输出为堆积直方图。(大家是否想起了之前学过的柱形图,可以通过设置position参数对多序列柱形进行堆积、簇状转换)。

我们尝试着将position=stack参数加入geom_histogram(position="stack")参数中,看下以上说法是否可靠。

ggplot(small,aes(price,fill=cut))+geom_histogram(position="stack")

R语言可视化中直方图的介绍及其美化技巧

果然不出所料,加入分类变量时的直方图,其位置调整与柱形图如出一辙,那么我们可以将position的几个参数挨个尝试:

ggplot(small,aes(price,fill=cut,alpha = 1/10))+geom_histogram(position="identity")  #position=identity,即不对直方图位置作任何变换。

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price,fill=cut,alpha = 1/10))+geom_histogram(position="dodge")  #position=dodge,将各系列位置错开成簇状直方图。

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price,fill=cut,alpha = 1/10))+geom_histogram(position="fill")  #position=fill,将各系列位置错开成堆积百分比直方图。

R语言可视化中直方图的介绍及其美化技巧

以上就是关于直方图几种常用形式,接下来讲关于直方图图表元素调整。

直方图的binwidth参数控制直方图组距大小。

ggplot(diamonds, aes(carat))+geom_histogram(binwidth = 0.01)

R语言可视化中直方图的介绍及其美化技巧

ggplot(diamonds, aes(carat))+geom_histogram(binwidth = 0.2)

R语言可视化中直方图的介绍及其美化技巧

当然也可以在直方图中直接添加fill填充为喜欢的颜色。

ggplot(diamonds, aes(carat))+geom_histogram(binwidth = 0.1,fill="steelblue")

R语言可视化中直方图的介绍及其美化技巧

使用外部主题命令:

ggplot(diamonds, aes(carat))+geom_histogram(binwidth = 0.1)+theme_stata()+scale_fill_stata()   #以上使用了stata的主题及配色模板

R语言可视化中直方图的介绍及其美化技巧

ggplot(diamonds, aes(carat))+geom_histogram(binwidth = 0.1)+theme_solarized()+scale_fill_solarized()   #以上使用了solarized主题及配色模板

R语言可视化中直方图的介绍及其美化技巧

手动自定义颜色:

ggplot(diamonds, aes(carat,fill="steelblue"))+geom_histogram(binwidth = 0.1)+theme_few()+scale_fill_manual(values="#FB882C")+ theme(strip.background=element_blank(),legend.position="none") 

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price,fill=cut))+geom_histogram(position="fill") +theme_wsj()+scale_fill_wsj()+theme(strip.background=element_blank(),legend.position="none") 

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price,fill=cut))+geom_histogram(position="fill") +theme_economist(base_size=14)+scale_fill_economist()+theme(strip.background=element_blank(),legend.position="none") 

R语言可视化中直方图的介绍及其美化技巧

关于直方图的分面技巧:

ggplot(small,aes(price,fill=cut))+geom_histogram()+facet_wrap(~cut)

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price,fill=cut))+geom_histogram()+facet_wrap(~cut)+theme_wsj()+scale_fill_wsj()+guides(fill=guide_legend(title=NULL))     #关于直方图的封面技巧

R语言可视化中直方图的介绍及其美化技巧

ggplot(small,aes(price,fill=cut))+geom_histogram()+facet_wrap(~cut)+theme_economist(base_size=14)+scale_fill_economist()+guides(fill=guide_legend(title=NULL))  

R语言可视化中直方图的介绍及其美化技巧

到此,关于“R语言可视化中直方图的介绍及其美化技巧”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI