「青莲科普」R语言系列——取其精华,去其糟粕的ggplot2你会用吗?

Posted 青莲百奥生物科技

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「青莲科普」R语言系列——取其精华,去其糟粕的ggplot2你会用吗?相关的知识,希望对你有一定的参考价值。





ggplot2是一个绘制可视化图形的R包 ,它是在 基础绘图系统(graphics) 和l attice包 的基础上,取其精华,去其糟粕,创造出来有自己特色的绘图系统。ggplot2的特点有, 图形映射 能自动的将数据映射到图形上;图层叠加,不同的图表视为不同的lager(图层),进行叠加;提供了scale,coord,facet等特点。这些特点会随着对ggplot2学习越深,越能感觉其方便和优秀。



Step1:安装

千里之行始于足下,对于没用过ggplot2的人,想要去学习和运用这个包,第一步当然要先会安装它。好在,这是款使用普遍的R包,很方便安装。R语言的install.packages()就能安装。 在R中,输入install.packages(" ggplot2" ),就能安装完成了。 如果 library(ggplot2)没有报错,就是表明成功安装。


Step2:基础绘图

为了了解ggplot2,我们先画一幅简单的散点图:

代码:

library(ggplot2)

data <- data.frame(x = 1:3, y = rep(3,3), group = c("A", "B", "C"))

ggplot(data, aes(x = x , y = y)) + geom_point()

生成的图片:

「青莲科普」R语言系列——取其精华,去其糟粕的ggplot2你会用吗?

先,我们准备绘图使用的数据, data 是一个数据框对象,有三列,第一列为x , 对应散点图中的 x 轴;第二列为y, 对应散点图中的y轴,第三列为group, 代表每个点的分类信息。

在使用ggplot2 绘图时,首先调用 ggplot 这个函数,声明绘图使用的数据,aes 参数指定的是绘图使用的变量,x代表x轴的变量,y代表y轴的变量。然后使用 ‘+’ 添加一个图层,用来展示数据,这里我们选择的图层是散点图 geom_point。

通过上面的例子我们可以看到,ggplot2 绘图时使用的是一个数据框对象, 图中的属性对应数据框中的某一列。


下面看一个映射的例子,将group 分组信息映射到颜色上

代码示例:
ggplot(data, aes(x = x , y = y, color = group)) + geom_point()

「青莲科普」R语言系列——取其精华,去其糟粕的ggplot2你会用吗?

从图中可以看出,只需要在aes 参数中,添加一个color = group, 就可以将group 信息映射到颜色上,而且ggplot2会自动化的给出对应的图例


Ggplot2的在可视化数据时,个人认为,最大的优点就是图层的叠加,可以随心所欲的在原来的图的基础上,添加各种属性,画出自己需要的美图!

附一些基础的图形属性:

color:轮廓色

fill:填充色

shape:点形状

linetype: dotted dashed

size:点大小,线条大小(粗细)

alpha:透明度,0-1:完全透明-完全不透明

width:宽度(条形图等)

binwidth:组距(直方图等)

label:名称(如x,y,legend等)

angle:角度

hjust:水平平移

vjust:垂直平移

group:分组

position:位置调整





R语言系列一点击查看







推荐阅读


*技术咨询*

*询价*

*预约宣讲*

服务至心·数据至金


往期回顾-点击阅读


以上是关于「青莲科普」R语言系列——取其精华,去其糟粕的ggplot2你会用吗?的主要内容,如果未能解决你的问题,请参考以下文章

redis前传集思广益之quicklist,取其精华去其糟粕

redis前传集思广益之quicklist,取其精华去其糟粕

NestJS 7.x 折腾记: 异常过滤器,取其精华去其糟粕!比如响应异常数据的包装~

12周总结

[博士论文写作总结]系列 写作前的思考

JavaScript语言精粹笔记