专栏名称: 癌图腾
癌图腾(cancer totem)是一个关于细胞与微环境的学术观点交流平台。
目录
相关文章推荐
医学界智库  ·  这些集体和个人,将获国家卫健委表彰! ·  2 天前  
德大器械注册与临床  ·  【原创文章】同品种临床评价(8)-支气管镜同 ... ·  2 天前  
Clinic門诊新视野  ·  山西首例|山西省心血管病医院王海雄主任应用乐 ... ·  2 天前  
51好读  ›  专栏  ›  癌图腾

不会写程序的科研狗不是好医生——5分钟学会R语言绘图

癌图腾  · 公众号  · 医学  · 2017-07-25 11:30

正文



手持两把锟斤拷,口中疾呼烫烫烫

脚踏千朵屯屯屯,笑看万物锘锘锘

看完这篇文章,你就可以说精通R语言绘图了

    大学之前我没有接触过计算机,大一学C语言的时候,很多时候一运行程序就会出现类似下面的字:

    刚开始我还以为电脑过热,多个“烫”字表达了电脑此刻处于水深火热之中,我不得不关机让它休息会。

    一提到编程,很多生物医学科研狗表示很头痛,不愿意碰触任何与编程相关的东西。我觉得很大部分原因在于学了大半学期C语言,还停留在黑色的原始输出输入界面,根本没有一点成就感。本文介绍如果和R绘制基本的图形。


1. 首先我们安装R和Rstudio, R 是必须安装的,Rstudio非必须,但能够帮助我们更好的编写程序,下载地址请看:http://group.keyangou.com/RGraph/topic/382

2. 绘制直方图

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

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

png(file = "E:/barchart.png")

barplot(y,names.arg =x)

dev.off()

上面代码中,x和y可以理解为数字,x取值中con代表对照组,exp1-3代表三个实验组,y是对应的数值,然后输出png到E盘,取名叫做barchart.png, 然后使用绘制函数barplot()绘制,最后关闭并输出图片。那么我们在E盘里面就得到了barchart.png,如下:

在barchart()函数中有非常多的参数,用来调整字体,颜色,位置,大小,在这就不多介绍。

3.绘制折线图

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

png(file = "E:/line_chart.png")

plot(y,type="o")

dev.off()

上面的参数不需要过多解释,采用的函数是plot()函数,运行之后,在E盘下有如下的图片:

4. 绘制散点图

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)

png(file = "E:/plot.png")

plot(x,y)

dev.off()

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

5. 绘制饼图

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

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

png(file = "E:/pie.png")

pie(x,label)

dev.off()

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

6. 绘制箱线图

png(file = "E:/boxplot.png")

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

dev.off()

上面函数稍微复杂些,在这不多介绍,运行看效果:

我们来看一下整个编程界面:

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

亦或是:

R语言可不只是用户上述简单的绘图,更强大的功能在与统计与生物信息学数据分析,有时间一定要学!新手可以关注 http://group.keyangou.com/Rgraph


这可能是四海八荒最实用的SCI绘图教程: “实用SCI视频教程——photoshop在SCI绘图中的应用” 和 “实用SCI视频教程——Graphpad统计数据作图” 均已发售,赶紧登录网站购买吧 http://mall.keyangou.com。

科研狗科研好助手keyangou.com

科研狗——科研好助手

http://www.keyangou.com

关注科研狗微信号,获取更多信息

加微信“widy-liu” 标明“科研狗”,加入科研狗综合讨论群。目前群一已满,群二即将满员。

科研狗科研好助手keyangou.com