您好!欢迎访问科研Z库官方网站
国家自然科学基金标书
[热点推荐]

国内有哪些容易发表的医学期刊?

SCI论文写作基本结构以及开展方法!

科研课题选题与标书填写

掌握医学英语翻译的奥秘,在于是否准确的把握好这个

一篇医学SCI综述应该是这个样子

【科研技巧】R语言学习科研绘图
2018-07-09    来源:整理于网络

R语言是用于统计分析、绘图的语言和操作环境。R的统计分析能力突出,有强大的数据展示能力。而其本质作为编程语言,具有着强大的拓展和开发能力,可以编制自己的函数,或制作独立的统计分析包、快速实现新算法。

R软件可以从其官网(https://www.r-project.org/或者https://www.rstudio.com)下载安装。R提供了超过4000个包,这些包可以实现很多不同的功能,而R自带了一系列的默认包,利用这些默认包,就可以画出一些基础的图形。小V下面就介绍一些基础图形的绘制方法,当然,也可能会涉及到一些加载不出来的扩展包,这说明这不是R自带的,需要先获取并安装install.packages(“包名称”),再下载不是R自带的其他扩展包。









直方图


直方图是用面积表示各组频数的多少,矩形的高度表示每一组的频数或百分比,宽度则表示各组的组距,因此其高度与宽度均有意义。

代码: 

x = c("con","exp1","exp2","exp3")

y = c(5,8,9,7)

barplot(y,names.arg =x)

dev.off()

上面代码中,x和y可以理解为数字,x取值中con代表对照组,exp1-3代表三个实验组,y是对应的数值,然后使用绘制函数barplot()绘制,最后关闭并输出图片。





折线图


折线图是排列在工作表的列或行中的数据可以绘制到折线图中。折线图可以显示随时间(根据常用比例设置)而变化的连续数据,因此非常适用于显示在相等时间间隔下数据的趋势。

代码:

y = c(5,8,9,7,10)

plot(y,type="o")

dev.off()




散点图



散点图可以描述两个连续型变量间的关系。并且经过一些拟合,可以探索两个变量之间的关系

代码:

x = c(1,2,3,4,5,6,7,8,9,10,11)

y = c(5,8,9,7,10,6,4,7,8,3,9)

plot(x,y)

dev.off()

散点图需要有X值和Y值,上面采用的函数依然是plot()函数,运行之后得到如下图片。当然你可以更改散点的类型,可以有三角形、正方形等20多种类型可选,甚至可以自定义散点类型



饼图


饼图是由扇形面积来表示组分所占比例,用pie函数实现

代码:

x = c(5,8,9,7)

label = c("一月","二月","三月","四月")

pie(x,label)

dev.off()

饼图中需要有一个标签label值,运行上面程序得到如下的图片:




箱线图


箱线图通过绘制连续型变量的五数总括(最小值、下四分位数、中位数、上四分位数、最大值),描述了连续型变量的分布。同时,在一副图中并列放置多组样品的箱线图,可以直观的进行跨组比较。

代码:

用mtcars数据集里的mpg列作为y坐标,用cyl列作为分组方式进行箱图绘制。

boxplot(mpg ~ cyl, data = mtcars, xlab = "气缸数",ylab = "英里每加仑")

dev.off()



下面是图个R语言的操作界面:



上面的图形看上去很丑,其实只是我们没有添加更多的参数,就是一些简单的语句,稍微增加些参数或者采用已经写好的程序包,你就可以绘制如下的图片啦!


条形图


载入vcd包

library("vcd")

将数据框Arthritis的Improved列提出,制成表格

counts <- table(Arthritis$Improved)

绘制条形图,定义了横纵坐标轴名,标题,以及颜色

barplot(counts,main="Simple Bar Plot",xlab="Improvement",ylab="Frequency",col=c("lightseagreen", "lightcoral","mediumpurple"))

图形展示如下:



频率直方图


直方图通过x轴上将值域分割为一定数量的组,在y轴上显示相应值的频数,可以展示连续型变量的分布。

将mtcar数据集中的mpg列挑出来

x<- mtcars$mpg

绘制直方图,定义x分组数,颜色以及坐标轴名称

h<-hist(x,breaks=12,col="red",xlab="MilesPer Gallon",main="Histogram with normal curve and box")

构造正态曲线数据

xfit <- seq(min(x),max(x),length=40)

yfit <- dnorm(xfit,mean=mean(x),sd=sd(x))

yfit <- yfit*diff(h$mids[1:2])*length(x)

绘制正态曲线

lines(xfit,yfit,col="blue",lwd=2)

绘制外层边框

box()

图如下:



箱线图


代码如下:

用mtcars数据集里的mpg列作为y坐标,用cyl列作为分组方式进行箱图绘制

boxplot(mpg~cyl,data=mtcars,main="Car Mileage Data",xlab="Number of Cylinders", ylab="Miles Per Gallon",col=c("red","yellow","green"))

图形展示如下:



散点图


代码:

attach(mtcars)

绘制散点图,定义点的类型、横纵坐标轴名以及标题

plot(wt,mpg,main="Basic Scatter plot of MPG vs. Weight",xlab="Car Weight (lbs/1000)",ylab="Miles Per Gallon",pch=19)

添加最佳拟合的线性直线,并定义颜色,线型,线宽

abline(lm(mpg~wt),col="red",lwd=2,lty=1)

添加平滑的曲线,并定义颜色,线型,线宽

lines(lowess(wt,mpg),col="blue",lwd=2,lty=2)

图形展示如下:





联系我们
官方QQ群:706227459
官方网站:www.keyanzhiku.com
服务邮箱:marketing@keyanzhiku.com
客服QQ:1745693101
微信公众号
留言板

微信扫一扫
关注该公众号