想要学习R数据可视化,小师妹带你见识ggplot2(二)
{ 点击蓝字,关注我们 }
小师妹在上一篇文章中已经详细讲述了ggplot2包的特点和一些基本使用,我们已经初步感受到了R数据可视化的强大之处。如果还没有阅读小师妹的上一篇文章,那么请小伙伴们先移步到上一篇文章哦,那么今天小师妹继续给大家讲述ggplot2这个神奇的R包。
一
几何对象
几何对象执行着图形的渲染以及控制图像的类型,小师妹给大家列举ggplot2中常用的一些geom函数:
1.geom_point():用于创建散点图,每个数据点表示为一个点。
2.geom_line():用于创建折线图,将数据点按顺序连接起来形成线条。
3.geom_bar():用于创建柱状图,每个数据点表示为一个矩形条。
4.geom_histogram():用于创建直方图,将数据分组并绘制出每个组的频数或频率。
5.geom_boxplot():用于创建箱线图,展示数据的分布情况和离群值。
6.geom_area():用于创建面积图,展示数据的累积值或比例。
7.geom_density():用于创建密度图,展示数据的概率密度分布。
8.geom_smooth():用于创建平滑曲线,通过拟合数据点来展示趋势。
9.geom_text():用于在图形中添加文本标签,可以显示数据点的数值或其他注释信息。
10.geom_tile():用于创建热力图,将数据以方块的形式表示。
11.geom_polygon():用于创建多边形图,可以用于绘制地图或其他复杂的几何形状。
12.geom_errorbar():用于创建误差线图,展示数据的误差范围。
13.geom_violin():用于创建小提琴图,展示数据的分布情况和密度。
14.geom_hex():用于创建六边形图,将数据点分组并以六边形的形式表示。
二
统计变换
在ggplot2中,统计变换是通过使用stat函数来实现的。统计变换可以对数据进行汇总、聚合或转换,从而生成可视化所需的数据。小师妹给大家列举一下ggplot2中常用的统计变换函数:
1.stat_identity():不进行任何统计变换,直接使用原始数据进行可视化。
2.stat_bin():对数据进行分组,并计算每个组的频数或频率。
3.stat_summary():对数据进行汇总统计,如计算均值、中位数、最大值、最小值等。
4.stat_smooth():拟合数据并生成平滑曲线,用于展示数据的趋势。
5.stat_boxplot():通过计算数据的分位数,生成箱线图来展示数据的分布情况。
6.stat_density():通过核密度估计,生成数据的概率密度曲线。
7.stat_ellipse():通过计算数据的协方差矩阵,生成椭圆来展示数据的分布情况。
8.stat_summary_bin():对数据进行分组,并对每个组进行汇总统计。
9.stat_summary_hex():对数据进行分组,并对每个组进行汇总统计,生成六边形图。
10.stat_summary2d():对数据进行分组,并对每个组进行汇总统计,生成二维统计图。
以上就是常用的一些变换函数,统计变换可以向原始数据中插入新的变量,例如用于直方图的 stat_bin 统计变换会生成如下三个变量:
(1)count:每组中观察值的数目
(2)density:每组的观察值密度
(3)x:组中心位置
这些变量是可以直接调用的,但是生成的变量名必须用 .. 包裹起来。我们这样做可以防止原始数据中的变量与生成变量之间重名,而引起冲突。小师妹举个例子:
> ggplot(diamonds, aes(x=carat)) +
+ geom_histogram(aes(y=..count..), binwidth = 0.2)

三
位置调整
在ggplot2中,位置调整参数用于控制图形中元素的位置和排列方式。小师妹给大家列举一下ggplot2中常用的位置调整参数:
1.position_identity():不进行任何位置调整,元素按照原始数据的位置进行排列。
2.position_stack():在柱状图和面积图中使用,将元素按照数值堆叠在一起。
3.position_fill():在柱状图和面积图中使用,将元素按照数值进行归一化,填充整个绘图区域。
4.position_dodge():在柱状图和面积图中使用,将元素按照分组进行分开排列,避免重叠。
5.position_jitter():在散点图中使用,对元素的位置进行随机抖动,避免重叠。
6.position_nudge():在散点图和线图中使用,对元素的位置进行微调,使其偏离原始位置。
接下来小师妹用条形图来给大家说明:
(1)0position = "dodge"
> ggplot(diamonds, aes(x=carat, group=cut)) +
+ geom_histogram(aes(y=..count.., fill=cut), position = "dodge", binwidth = 0.2)

(2) position = "fill"
> ggplot(diamonds, aes(x=carat, group=cut)) +
+ geom_histogram(aes(y=..count.., fill=cut), position = "fill", binwidth = 0.1)

(3)position = "stack"
> ggplot(diamonds, aes(x=carat, group=cut)) +
+ geom_histogram(aes(y=..count.., fill=cut), position = "stack", binwidth = 0.1)

经过小师妹两篇文章对ggplot2的介绍,小伙伴们是否收获颇多呢,其实R语言中的可视化的功能我们现在只是揭示了它的一小部分。后面需要我们学习的东西还有很多,不过只要大家跟随小师妹的步伐就一定能掌握它的精髓,小伙伴们加油奋起吧。那今天小师妹的分享就到这里啦,有其他问题记得随时跟小师妹沟通哦。
E
N
D