R语言常用绘图函数

条形图

条形图是用一个单位长度表示一定的数量,根据数量的多少画成长短不同的直条,然后把这些直条按一定顺序排列起来。

条形图横轴上的数据是离散的而不是连续的。

  • 参数说明

height:高度,通过该参数可以指定要画多少个柱子以及每个柱子的高度,其值有两种格式。

第一种:向量vector,此时会根据向量的长度来判断有多少个柱子,向量中的每个值就是柱子的高度。

第二种:矩阵martrix,此时用于画堆积柱状图。

#使用向量
barplot(height=1:5)

 

 

 

#使用矩阵,堆积柱状图
data <- cbind(a=1:4,b=1:4)
barplot(data)

 

 

 


 

beside:当输入参数为矩阵时,默认为堆积柱状图,beside默认值为FALSE,当为TRUE时,则每一列都表示一个分组并列。

data <- cbind(a=1:4,b=1:4)
barplot(data,beside=TRUE)

 

 

 


width:宽度,控制每个柱子的宽度,默认值为1,值得注意的是,该值是可以循环使用的,当只设置一个值时,会自动循环,生成长度和柱子数目相同的向量,效果就是所有柱子的宽度一样,也可以指定多个值,使每个柱子宽度不同。

barplot(c(1,2,3,4,5),width=5:1)

 

 

 


names.arg:每个柱子下的标记,当height为向量时,默认的标记为向量的names属性,当height为matrix时,默认为colnames的属性。

barplot(c(1,2,3,4,5),names.arg=c("A","B","C","D","E"))

 

 

 

data <- cbind("A" = 1:4, "B" = 1:4)
barplot(data, names.arg = c("D", "E"))

 

 

 

 


绘制条形图练习

#绘制简单的条形图
math <- c(78,92,89,61,95)
barplot(math)

#添加x轴上的分类标签
math <- c(78,92,89,61,95)
name <- c("小刚","小明","小花","小芳","小丽")
barplot(math,names.arg = name)

#指定填充色、边框色、标题
math <- c(78,92,89,61,95)
name <- c("小刚","小明","小花","小芳","小丽")
barplot(math,names.arg = name,border="green",col=c("red","blue","orange","yellow","green"),main="成绩")

#绘制堆叠条形图
math <- c(78,92,89,61,95)
english <- c(90,89,95,70,98)
grade <- matrix(c(math,grade),2,5,byrow =TRUE)
name <- c("小刚","小明","小花","小芳","小丽")
barplot(grade,border="green",names.arg=name,main="成绩",xlab="姓名",ylab="成绩",legend=c("数学","英语"),beside=TRUE)

 


 

绘制饼状图

饼图是将各项的大小与各项总和的比例显示在一张饼中,以饼的大小来确定每一项的占比。饼图可以比较清楚的反映出部分与部分,部分与整体之间的比例关系,易于显示每组数据相对于总数的大小,而且显现方式直观。

R语言中,提供绘制饼图的函数是pie(),每一个扇形的角度与相应数据的数值大小成比例,使用正数作为向量输入。附加参数用于控制标签,颜色,标题等。

# 数据准备
info = c(1, 2, 4, 8)

# 命名
names = c("Google", "Runoob", "Taobao", "Weibo")

# 涂色(可选)
cols = c("#ED1C24","#22B14C","#FFC90E","#3f48CC")
# 计算百分比
piepercent = paste(round(100*info/sum(info)), "%")
# 绘图
pie(info, labels=piepercent, main = "网站分析", col=cols, family='GB1')
# 添加颜色样本标注
legend("topright", names, cex=0.8, fill=cols)

 

 

 


 

绘制3D饼图,需要安装R包plotrix 

#install.packages("plotrix")
library(plotrix)
# 数据准备
info = c(1, 2, 4, 8)
lbl <- c("London","New York","Singapore","Mumbai")
pie3D(info,labels = lbl,explode = 0.1,  main = "城市3D饼图")

 

 


 

  • 绘制散点图

散点图通常是用来表示两个连续变量之间的关系,图中的每个点表示目标数据集中的每个样本。散点图通过散点的疏密程度表示两个特征的数量关系。

参数说明

x 横坐标 x 轴的数据集合

y 纵坐标 y 轴的数据集合

type:绘图的类型,p 为点、l 为直线, o 同时绘制点和线,且线穿过点 main 图表标题

xlab、ylab x 轴和 y 轴的标签名称

xlim、ylim x 轴和 y 轴的范围

axes 布尔值,是否绘制两个 x 轴


 

posted @ 2021-06-22 19:39  ReVe1Se  阅读(799)  评论(0编辑  收藏  举报