首先,我们准备绘图数据,数据来源是2018年的一篇研究论文,In Vitro and In Vivo Gene Therapy Vector Evolution via Multispecies Interbreeding and Retargeting of Adeno-Associated Viruses,我们把数据输入到文件AAV infectivity.csv,并保存在工作目录下。
下面开始正式绘图:
1 | library(ggplot2) # 加载ggplot2 |
1 | Cell.line Tissue.or.cell.type AAV.1 AAV.2 AAV.3 AAV.4 AAV.5 |
以第一列为横坐标,第三列为纵坐标,绘制条形图:
1 | pbar=ggplot(data1,aes(x=data1[,1],y=data1[,3]))+ # 调用ggplot函数,以data1的第一列为横坐标,第三列为纵坐标,作为第一图层; |
如果需要对数据进行排序并绘制条形图,可以首先对第三列从大到小排序,命令如下:
1 | data1=data1[order(data1[,3],decreasing = T),] # 对第三列进行降序排列; |
以第三列从大到小排序后的data1如下:
1 | Cell.line Tissue.or.cell.type AAV.1 AAV.2 AAV.3 AAV.4 AAV.5 |
然而,此时绘制条形图,图形却不会从大到小排列,需要对第一列进行排列,
1 | data1[,1]=factor(data1[,1],levels=data1[,1],order=T) # 对第一列排序; |
再次调用ggplot作图,就会得到降序排列的条形图。
最后,保存图片为PDF格式,命令如下:
1 | ggsave(pbar,filename="in vitro AAV1-order.pdf",width=12,height=9) |