基本作图工具
2026/9/18 14:30:07 网站建设 项目流程

一、频数:条形图

#此次作图工具主要是使用R内置的function #先加载R内置的数据集 load("diagnosis.Rdata") #1.条形图 #使用table工具来制作一个有两个数字的向量 gender <- table(data.wide$Sex) ##0=Male,1=Female #制作这两个频数的名称 glabels <- c('Male','Female') #使用barplot可以绘制出两条条形图 barplot(gender) #将0,1分别变成所代表的含义 barplot(gender,names.arg = glabels) #增加图标的标题 barplot(gender,names.arg = glabels,main = '性别的条形图') #添加坐标标题 barplot(gender,names.arg = glabels,main = '性别的条形图', xlab = '性别', ylab = '频数')

上述代码的效果如下:

(1)绘制两条条形图

(2)修改标签

(3)增加标题

(4)增加横纵坐标标题

二、百分比:饼图

#2.饼图 #最简单的饼图 pie(gender) #给饼图加上标签和标题 pie(gender,labels = glabels,main = '性别的饼图')

上述代码的效果如下:

(1)最简单的饼图

(2)增加标签和标题

三、连续变量的分布:直方图,箱线图

(一)直方图

#3.直方图 #制作最简单的直方图 hist(data.wide$Age) #增加标题和坐标轴标题 hist(data.wide$Age,main = '年龄的直方图',xlab = '年龄') #修改直方图的组数 hist(data.wide$Age,main = '年龄的直方图',xlab = '年龄',breaks = 5) #指定直方图的分组界限 hist(data.wide$Age,main = '年龄的直方图',xlab = '年龄', breaks = c(15,25,35,45,55,65,75) )

上述代码的效果如下:

(1)最简单的直方图

(2)更改标题

(3)固定直方图的组数

将组数改为5组

(4)指定直方图的分组界限

(二)箱线图

#4.箱线图 #原始箱线图 boxplot(data.wide$Age) #增加标题 boxplot(data.wide$Age, main = '年龄的箱线图', ylab='年龄')

上述代码的效果如下:

(1)原始箱线图

(2)增加标题

四、分组比较:多组箱线图

#5.多组箱线图 #按照性别分组,画年龄的箱线图 boxplot(Age~Sex,data = data.wide) #将分类变量的数字改成实际代表的含义 boxplot(Age~Sex,data = data.wide,names=glabels) #增加标题 boxplot(Age~Sex,data = data.wide,names=glabels, main = '以性别分组的年龄分布')

上述代码的效果如下:

(1)多组箱线图

(2)将分类变量的数字改成实际代表的含义

(3)增加标题

五、相关系数:散点图

上述代码效果如下:

(1)绘制散点图

(2)增加标题

六、图形调整

1、增加参考线

(1)水平参考线

#增加参考线 boxplot(data.wide$TestC,main = "TestC") #在等于15处增加一条水平的参考线,h是水平的意思(horizon),col=red意味着是红色,默认颜色为黑色 abline(h=15,col='red')

(2)垂直参考线

#制作一个水平的箱式图 boxplot(data.wide$TestB,horizontal = TRUE,main='TestB') #添加垂直参考线,v是垂直的意思(vertical) abline(v=15,col='red')

(3)增加y=x的直线

#增加y=a+bx的参考线 plot(data.wide$TestB,data.wide$TestC,xlab = 'TestB',ylab = 'TestC') abline(a=0,b=1,col='red') ##y=a+bx --> y=x text(x=23,y=27,labels='y=x',col='red')

2、多图合并

(1)2×2的合并图

#多图合并 #par这一工具是用来作为整个图的调整 #使用mfrow来指定把这个图分成几个格子,这里分成了2行2列 par(mfrow=c(2,2)) hist(data.wide$Age,main = '年龄的直方图',xlab = '年龄') #会被画在图的左上角 boxplot(Age~Sex,data = data.wide,names=glabels, main = '以性别分组的年龄分布') #会被画在右上角 plot(data.wide$Age,data.wide$TestB,xlab = '年龄', ylab = "测试B", main = '测试B与年龄的关系') #第二行第一个位置 plot(data.wide$Age,data.wide$TestC,xlab = '年龄', ylab = "测试C", main = '测试C与年龄的关系') #第二行第二个位置 #是一行一行来填充的

(2)1×3合并图

#1×3的合并图 par(mfrow=c(1,3)) boxplot(Age~Sex,data = data.wide,names=glabels, main = '以性别分组的年龄分布') plot(data.wide$Age,data.wide$TestB,xlab = '年龄', ylab = "测试B", main = '测试B与年龄的关系') plot(data.wide$Age,data.wide$TestC,xlab = '年龄', ylab = "测试C", main = '测试C与年龄的关系')

七、保存图片

(1)png格式

#保存图片 #将图片保存为png格式 #文件名字一定要加后缀名,res表示像素 png(filename = 'Rplot.png',width = 3000,height = 1500,res = 300) #决定好画图板的大小之后,就可以开始画图了 par(mfrow=c(1,3)) boxplot(Age~Sex,data = data.wide,names=glabels, main = '以性别分组的年龄分布') plot(data.wide$Age,data.wide$TestB,xlab = '年龄', ylab = "测试B", main = '测试B与年龄的关系') plot(data.wide$Age,data.wide$TestC,xlab = '年龄', ylab = "测试C", main = '测试C与年龄的关系') dev.off() #代表png的编写器到此结束

还可以保存成jpeg(),TIFF()等格式

(2)pdf格式

pdf(file = 'Rplot1.pdf') par(mfrow=c(1,3)) boxplot(Age~Sex,data = data.wide,names=glabels, main = 'Age by gender') plot(data.wide$Age,data.wide$TestB,xlab = 'Age', ylab = "TestB", main = 'Test B and Age') plot(data.wide$Age,data.wide$TestC,xlab = 'Age', ylab = "TestC", main = 'Test C and Age') dev.off()

#以上内容均为医咖会R语言基础课程笔记,仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询