R语言绘图之ggplot2包
(2018-09-25 03:09:30)
6月份一直在忙期末考试,今天来迅速的学习下ggplot2包的简单绘图。
R的基础包里面也有很多画图函数,例如plot();barplot();qqplot();
但是还有大名鼎鼎的ggplot2包,用这个包的函数画出的图比较漂亮,而且使用灵活。 在ggplot的官方手册中提及到,
一张统计图形是由从数据到几何对象(geometric object,记为geom,如点,线,条形等),图形属性(aesthetic
attributes,记为aes,如颜色,形状,大小)的一个映射。除此以外,图形还可以包含了数据的统计变换(statistical
transformation, 记写为stats)。最后,绘画在某个坐标系中(coordinate system,
记为coord),而分面(facet,将绘图窗口分成若干个子窗口)是用来生成数据中不同子集的图形 先介绍下它的基本元素: 数据与映射
几何对象geom 统计变化stats 标度 坐标系coord 分面facet 这些组件之间是通过“+”,
以图层(layer)的方式来粘合构图的, 所以图层是ggplot2中一个重要的概念。
以下用的数据是一份毕业生数据,来自王斌会主编的《数据分析与R语言建模》的练习数据,一共48个样本点,9个属性 一、数据
在ggplot2中,接受的数据集必须是以data.frame格式的。这种格式易于保存数据,而且能在保留原有的绘图参数下,
用%+%方便地变更已有数据集。 library("ggplot2")#调用包
UG=read.table("clipboard",header=T); head(UG)
p=ggplot(UG,aes(score,income),color=sex)+geom_point()
UG.c=transform(UG,income=income*1.5)#将收入放大1.5倍,其他不变 p %+%UG.c 1 2 3
4 5 6 二、映射 aes()函数是ggplot2中的映射函数, 映射是数据集中的数据关联到相应的图形属性过程中一种对应关系
1.映射的概念 >p=ggplot(UG,aes(score,income,color=sex))+geom_point()
> summary(p) data: id, name, sex, region, birth, income, height,
weight, score [48x9] mapping: x = score, y = income, colour = sex
> p1=ggplot(data=UG) > summary(p1) data: id, name, sex,
region, birth, income, height, we