R语言作图——Dot plot(点图)

  • Post author:
  • Post category:其他


原创:黄小仙

2020开年不凡, 生活果然充满了惊吓,可仍然要期待惊喜呀。今天要给大家介绍的是

点图(Dot plot)

,点图展示的数据比较简单,但胜在好看啊。


作图数据如下:


(数据框中的第一列行名在本次作图中暂时用不到)


Step1. 绘图数据的准备


首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式。


Step2. 绘图数据的读取

data<-read.csv(“your file path”, header = T)
#注释:header=T表示数据中的第一行是列名,如果没有列名就用header=F


Step3.绘图所需package的安装、调用

library(reshape2)
library(ggplot2) 
library(Hmisc)                       
#注释:package使用之前需要调用
# 今天要用到stat_summary()函数需要调用Hmisc包


Step4.绘图

data_melt<-melt (data[,-1])
#注释:melt()函数把表格中的宽数据变成长数据
# data[,-1]去掉作图用不到的第一列数据
p<-ggplot(data_melt, aes(x = variable, y = value, color=variable, fill= variable)) + 
   geom_dotplot(binaxis='y', stackdir='center', binwidth = 1)+
   theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.border = element_rect(colour="black",fill=NA))
p


添加平均值

p + stat_summary(fun.y = "mean", geom = "crossbar", 
             mapping = aes(ymin = ..y.., ymax = ..y..), width = 0.3)


添加误差线

p + stat_summary(fun.y = "mean", geom = "crossbar", 
      mapping = aes(ymin = ..y.., ymax = ..y..), width = 0.3) +
      stat_summary(fun.data = "mean_se", geom="errorbar", width = 0.2)



(公众号:生信了)



版权声明:本文为biocity原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。