原创内容,欢迎转载,转载请注明出处
主笔:于浩
说明
-
科研绘图很重要,但是内容更为重要,先保证内容的高质量,再学习高质量绘图。
-
绘图工具有很多,用任何软件/在线工具绘图都可以,没有必要使用R语言,R语言并不一定是最优选择,只是选择之一。
-
绘图与生信分析一样,数据格式整理很重要,一定要保证格式正确。
一、R语言软件安装
1、系统和软件参考:R语言绘图基础
2、下载Demo数据,点击文章底部的“下载demo数据”下载demo数据和R脚本。
二、数据和脚本准备
1、将demo数据解压缩到D盘根目录的“R-Plot”文件夹下。
2、将绘图数据按照demo数据的格式填写到“input_table.csv”文件中。
输入的格式如下:
三、运行R脚本进行绘图
1、双击R脚本“BarPlot01.R”,用RStudio打开脚本。
2、根据原始数据修改脚本(可以修改的内容见下面的脚本,主要修改 gather 软件后面的列名,如果列数超过10列,必须要添加新的填充颜色)
建议保存svg格式的文件,利用CDR等软件进行修改。
library(ggplot2) #加载ggplot2包
library(tidyr)
# 导入数据
datawidth <- read.table("D:\\R-plot\\input_table.csv", header=T,sep=",")
# 利用tidyr包里面的gather工具将款格式转换为长格式
# 改行代码最后的“A:E",冒号前面是第一列的列明,冒号后面是第二列的列明,此处需要修改!!!
datalong <- gather(datawidth, type, value, A:E)
# 绘图
ggplot(datalong, aes(x=type, y=value, group=type, fill=type))+
geom_boxplot(
notch=TRUE, # 箱线图有没有凹痕,如果是False就没有,就是一个完整的矩形。
outlier.colour="blue",
outlier.shape=10,
outlier.size=4,
outlier.alpha=0.4
)+
stat_boxplot( # 添加error bar,也就是四分位数
geom="errorbar",
width=0.15
)+
stat_summary( # 添加一个点,表示平均值所在的位置
fun.y=mean,
geom="point",
shape=23,
size=4,
col = "red"
)+
# 如果想要用预设的调色可以不要下面这两段代码,用其他的代替,例如: +scale_fill_lancet() 具体的每个系统配色好不好需要查资料
scale_fill_manual( # 手动设置箱线图的填充颜色
values=c("#C0FF3E", "#FF4500", 'blue', "#ff0088", "#ff8800","#00FFFF","#7D26CD", "#009900", "#E69F00", "#ffff00")
)+
# geom_dotplot(binaxis="y", stackdir="center", dotsize = 0.4, stackratio=0.5)+ # 添加散点图,点不抖动,而是一行一行的分布
geom_jitter(shape=16, position=position_jitter(0.2)) # 添加散点,散点是随机抖动的,0.2这个值越大代表抖动程度越高。抖动范围越大(散点宽度越宽)
下面这两个地方的参数需要注意,基本上这两个对了就能画出图来。
3、最终生成的图片如下:
4、保存图像为SVG格式,利用CorelDRAW软件修改细节。具体参考“CorelDRAW绘图基础”
评论区