R语言可视化及作图6--ggplot2之点图、条形图、盒形图、直方图、线图

Python013

R语言可视化及作图6--ggplot2之点图、条形图、盒形图、直方图、线图,第1张

R语言绘图系列:

标度控制着数据到图形属性的映射,标度将我们的数据转化为视觉上可以感知的东西,比如大小、位置、颜色、形状等。标度也为我们提供了读图时所使用的工具,比如说坐标轴和图例。总的来说,可以称为引导元素。标度函数控制元素的属性,可以理解为图形的遥控器,可以用它来调整画布大小、颜色等等。此前学的shape,color,size等参数和标度函数相比显得不够灵活。

scale_fill_brewer 调色板函数

geom_errorbar()

geom_crossbar()

geom_linerange() 绘制线段

geom_pointrange() 绘制点

pointrange:点画线

首先绘制一张盒形图

在图上显示出观测值

值得注意的是,图上点的多少并不能完全反应原始数据的多少,因为有的点可能因为点过于密集就会被覆盖,看起来是一个点,其实可能是多个点。

因此可以使用geom_jitter函数将不同的点区分开(jitter是震荡散点),width设置如果遇到相同的点,点向左右方平移的距离。alpha设置透明度。

黑色点是离群点

还可以绘制卡槽图

varwidth参数会根据该水平下观测值的个数(n值)改变盒形图的宽度。(这里宽度去的不是观测个数的绝对值,而是平方根,以缩小差距。)

给盒子上色

分组盒形图,用不同颜色区分

画水平的盒形图

使用coord_flip函数(坐标轴翻转函数)

绘制一张直方图

bins可以设置直方图条柱的数目,默认为30。当bins和binwidth(设置条柱宽度)同时设置时,默认以binwidth为准。

新加入变量cut,根据新变量在price水平上进行一个计数

y轴由count变为density,绘制概率密度

注意下面density的写法,前后都要加..

绘制概率密度曲线:geom_density函数

堆栈密度概率曲线

geom_line/geom_path/geom_step

绘制一个简单的线图

绘制点线图,点和线需要分别添加。

如上图,线在点之上,是因为先投射了点,又投射了线。

先投射线,点就出现在了线之上。

线的颜色出现了渐变

geom_smooth函数:绘制拟合曲线

methods还有其他的方法,如glm:广义线性模型;losses:纯粹平滑;gam:广义加性模型等等(lm和glm最常用)

geom_hline绘制水平线,geom_vline绘制垂直线。xintercept和yintercept是截距,slope是斜率。

1.getwd()#查看当前工作目录

2.setwd('E:graduation-design/OC/sctransform')#设置工作路径,引号内的内容是一个例子,注意路径最好不要有中文和特殊符号。

3.install.packages.('包')#下载包

4.library(包)#加载包

5.update.packages(包)# 可以更新已经安装的包。

6.help(package = "包") # 获取该R包的帮助文件

7.head(object) #查看对象的前6行

8.tail()#查看对象的后6行

9.[,1]#访问数据的第一列

10.rm(object) #删除对象

11.save.image("myfile") #保存工作空间到文件myfile中(默认值为.RData)

12.example("foo")#函数foo的使用示例(引号可以省略)

13.class(object) #显示某个对象的类或类型

14.c()#定义向量

15.print() #展示数据

16.mode() # 查看数据类型

17.na.rm = TRUE# 去除缺失值

18.is.na() #检查是否有缺失值

19.na.omit() # 删除包含缺失值的行

20.nchar() #统计字符串长度

21.substr(x = ,start = 1, stop = 3) # 提取字符串(首字母大写)

22.toupper()#将字符串都转化成大写

23.tolower() #将字符串都转化成小写

24.gsub("^(\\w)","\\U\\1",tolower(temp),perl = T) #首字母大写

25.gsub("^(\\w)","\\L\\1",upper(temp),perl = T) #首字母小写

26.Sys.Date() # 显示目前系统的时间

27.read.table("c:/路径",seq = "") # 读取excel

28.read.table(网址) #读取网站内容

29.read.table("clipboard")#读取剪切板中的文件

30.read.table(gzfile("文件")) #读取压缩文件

31.write(x,file = "x,txt") #输出文本

32.write.table(x,gzfile("文件名"))# 输出压缩文件