前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【学习】ggplot2绘图入门系列之二:图层控制与直方图

【学习】ggplot2绘图入门系列之二:图层控制与直方图

作者头像
小莹莹
发布2018-04-18 16:50:21
6880
发布2018-04-18 16:50:21
举报

如前文所述,ggplot2使用图层将各种图形元素逐步添加组合,从而形成最终结果。第一层必须是原始数据层,其中data参数控制数据来源,注意数据形式只能是数据框格式。aes参数控制了对哪些变量进行图形映射,以及映射方式,aes是Aesthetic的缩写。 下面我们来绘制一个直方图作为示例。数据集仍采取mpg,对hwy变量绘制直方图。首先加载了扩展包,然后用ggplot函数建立了第一层,hwy 数据映射到X轴上;使用+号增加了第二层,即直方图对象层。此时p被视为一种层对象,使用summary函数可得到关于它的更多信息,print(p)命 令即可进行绘图。 library(ggplot2) p <- ggplot(data = mpg,aes(x = hwy)) p <- p + geom_histogram() summary(p) data: manufacturer, model, displ, year, cyl, trans, drv, cty, hwy, fl, class [234x11] mapping: x = hwy faceting: facet_grid(. ~ ., FALSE) ----------------------------------- geom_histogram: stat_bin: position_stack: (width = NULL, height = NULL) 上面的信息告诉我们,p对象含有两层,第一层数据层描述了变量和映射方式,第二层是直方图对象(geom_histogram),geom表示几何 对象,它是ggplot中重要的图层控制对象,因为它负责图形渲染的类型。geom_histogram是图形渲染类型的一种,其它类型可参见官网。 每个geom对象都需要有数据输入,数据可以从第一层中自动读取,也可以在aes参数中直接设置。而且每个geom还默认搭配某种统计变换(stat),geom_histogram的默认统计变换是stat_bin。它负责对数据进行分组计数。 下面我们尝试两种更为复杂的直方图,首先将数据按照year这个变量划分为两组,用不同的颜色绘制直方图,而且用频率而非计数来刻画Y轴,并添加密度曲线。 p <- ggplot(mpg,aes(hwy)) p + geom_histogram(position = 'identity', alpha=0.5, aes(y = ..density.., fill = factor(year))) + stat_density(geom = 'line', position = 'identity',

aes(colour = factor(year)))

如果想将两个直方图分开绘制,也可以使用facet_grid参数,结果如下图所示。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2014-05-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PPV课数据科学社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档