R语言绘制小提琴图violin plot实现示例

目录
  • Step1.绘图数据的准备
  • Step2.绘图数据的读取
  • Step3.绘图所需package的安装、调用
  • Step4.绘图
  • Step5.美化

即便小仙同学决定学习R语言来提升自己作图的“逼格”的时候,心中还有有些疑虑的(嘿嘿,我这么懒,可不愿意做无用功了?)。仔细想了想,貌似又找到了两个学习R的理由。

一是R可以帮助我们避免重复劳动,实现“一劳永逸”的终极梦想。尽管非常不想承认这一事实,在科研的过程中,小仙同学制造出了大量“无效”的数据(sign…),但也不得不“绞尽脑汁”、“竭尽全力”地进行花式分析,试图找出合理的解释。这时候用Excel或者Origin作图的劣势就显现出来了,每换一种分析方法或者是数据,我们都需要经过“插入图表”、“调整颜色”、“调整间距”等等繁杂的工序画出一张可以拿去“面圣”的图。小仙同学一想到这些就感觉“累觉不爱”了。

二是R可以自动生成比较貌美的图。不知道大家有没有这样的感受,自己辛辛苦苦画了半天、调整的半天的图会得到真实却很残忍的评价“很丑”(这是小仙同学心中永远的痛)。即使本小仙自以为眼光独特、品味高雅,费劲尝试“高级”的色系,但搭配出来总是那么不尽人意(实测网红晚晚带火的“莫兰迪色”不适用于科研绘图)。颜色的搭配、饱和度和透明度的调整没有想象中那么容易。折腾了半天,天生就爱不服气的本小仙,最后决定还是把专业的事交给专业的人做啦(偷偷告诉你,据说有科学家专门研究paper插图的配色,所以自己画的图没有那么貌美的时候也不要“妄自菲薄”啦)。

好了,叨叨这么多,终于要开始进入正题啦。一开始用R绘图的时候,小仙同学其实是非常痛苦的,因为没有编程基础,又怼了好几年瓶瓶罐罐,看到一行行代码,脑子里飘过的全是“&%¥#@¥$”。尤其是当你有实验要做、报告要写、作业要交的时候,平心静气地坐下来踏踏实实学习真的太难了(有人说小仙同学那么忙是因为效率低,好像真有些道理,我这真是“唉”,有苦说不出)。

后来本小仙的学习策略就非常简单,用到啥就去搜啥,我对数据结构、语法结构一点都不感兴趣,能让我用最短的时间内画出我想要的图,就是最好的方法。即使这样,小仙同学还是费了一些功夫。因为网上的一些教程,很多都是从别处复制粘贴过来的,本身就不完整。另外一个原因,某些大神觉得自己的教程已经足够通俗易懂了,有些大家都知道的基础知识根本不需要讲(小仙同学不服,有基础的同学不用看教程也可以自己摸索出来,真正需要教程的就是我们这些小白)。
小仙同学愿意尝试一下,把最最全面、稍作修改就能拿去的方法code分享一下,也不枉费花了那么多的时间。
那就先从violin plot开始吧。
(假设你已经安装了R和RStudio)

Step1. 绘图数据的准备

首先要把你想要绘图的数据调整成R语言可以识别的格式。
一般我们的数据都是保存在excel文档里,这里建议大家在excel中保存成csv格式,读写的速度会比xlsx快很多。(小仙同学的亲身经验,我的有些数据有两万行,xlsx在我的耐心范围内读不进去,RStudio崩溃)。
数据的格式如下图:一列表示一种变量,第一行是列名

Step2. 绘图数据的读取

data<-read.csv(“your file path”, header = T)

#注释:header=T表示数据中的第一行是列名,如果没有列名就用header=F

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

install.package(“ggplot2”) #注释:ggplot2是目前公认绘图很强的一个安装包

library(ggplot2) #注释:package在使用之前需要调用

Step4.绘图

data$dose <- as.factor(data$dose)

#注释:此处dose可用你的变量名称替换,$表示取数据集里的某一个元素

p<-ggplot(data, aes(x = dose, y = len))

#注释:”x=”,”y=”表示x轴和y轴表示的变量数值,p表示图像对象

p+geom_violin() #注释:画出violin plot的函数

Step5.美化

p+geom_violin(aes(fill = dose)) #注释:按组别填充不同的颜色

*如果你想手动改变颜色,可以使用这一句

p+geom_violin(aes(fill = “dose”))+scale_fill_manual(values=c("#56B4E9"))
#注释:”#56B4E9”可以用其他颜色的代码来替换

好啦,今天的分享就到这里了,希望可以帮助到大家以后请多多支持我们!

(0)

相关推荐

  • R语言两组变量特征相关关系热图绘制画法

    目录 准备数据 简单热图 只对列进行聚类 将相关系数显示在图上 在图上加上显著性标记 准备数据 两组变量的数据可以像下面这样处理,分别保存在两个csv文件中. > # 导入数据及数据预处理 > setwd("D:/weixin/") > rows <- read.csv("rows.csv") > cols <- read.csv("cols.csv") > str(rows) 'data.frame':

  • R语言绘制Radar chart雷达图

    目录 更新前原文 作图方法: Step1. 绘图数据的准备 Step2. 绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图数据格式调整 Step5.绘图 填充透明度调整方法如下: 1.取消编组 2.选中线条,对象—实时上色—建立 3.选中线条,对象—拓展 4.更改填充颜色,输入相应颜色RGB数值 5.删掉图形白色背景 6.外观—填色—不透明度—调整数值 对于导出带有透明度的高清图,小仙又发现了更懒的办法,特来更新 再Rstudio里调整好透明度之后,直接导出pdf

  • R语言绘制Facet violin plot小提琴刻面图实现示例

    目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图 Step5.美化 老铁们,许久未见啦.顺便说一下,最近可不是小仙同学偷懒哟,电脑上个月送修今天刚刚拿回来(想买联想Yoga的同学先问问自己会不会拆电脑换排线,我买的这台用了一个月,送修也用了一个月 ).最近我可攒了个大招呢,先来看看下面这张图,有没有很眼熟呢? 这张图在开始介绍R语言的时候就出现过啦,不过小仙同学当时并不知道怎么画.今天可以秀一把啦. Step1. 绘图

  • R语言数可视化Split violin plot小提琴图绘制方法

    最近小仙同学在好几篇文献里看到了这种小提琴图,暂时就肤浅地认为这是作者为了更好地比较对照组与实验组的差别,所以将同一个基因的小提琴图各画了一半,放在一起.为了跟上可视化的潮流,小仙也来尝试画一下这个没查到正经名字的图. Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式.作图数据格式如下: Step2. 绘图数据的读取 data<-read.csv("your file path", header = T) #

  • R语言绘制数据可视化小提琴图画法示例

    目录 Step1. 绘图数据的准备 Step2. 绘图数据的读取 Step3. 绘图所需package的安装.调用 Step4. 绘图 小提琴图之前已经画过了,不过最近小仙又看到一种貌美的画法,决定复刻一下.文献中看到的图如下: Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式.作图数据如下: Step2. 绘图数据的读取 data<-read.csv("your file path", header = T

  • R语言数据可视化绘图Lollipop chart棒棒糖图

    目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的调用 Step4.因子水平排序 Step5.绘图 今天给大家分享的是Lollipop chart(棒棒糖图)的画法.棒棒糖图的用途跟条形图的用法类似,只是看起来更加美观一些,图表形式更加丰富(数据不够.拿图来凑,啥也不能阻止我优秀 ). 为了跟之前画的柱状图更好的比较,今天画图使用了相同的数据. 作图思路:棒棒糖图实际上是在散点图的基础上增加了辅助线. 不过在作图过程中还是遇到了和之前一样的问题,数

  • R语言绘制小提琴图violin plot实现示例

    目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图 Step5.美化 即便小仙同学决定学习R语言来提升自己作图的“逼格”的时候,心中还有有些疑虑的(嘿嘿,我这么懒,可不愿意做无用功了?).仔细想了想,貌似又找到了两个学习R的理由. 一是R可以帮助我们避免重复劳动,实现“一劳永逸”的终极梦想.尽管非常不想承认这一事实,在科研的过程中,小仙同学制造出了大量“无效”的数据(sign…),但也不得不“绞尽脑汁”.“竭尽全力”地进

  • R语言绘制数据可视化Dumbbell plot哑铃图

    目录 Step1. 绘图数据的准备 Step3. 绘图所需package的安装.调用 Step4. 绘图 改变size的大小 调整顺序 又是一年春来到,小仙祝大家在新的一年开开心心.顺顺利利!今天给大家分享的图是哑铃图(Dumbbell plot). Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式.作图数据格式如下: Step2. 绘图数据的读取 data <- read.csv("your file path&qu

  • R语言绘制折线图实例分析

    折线图是通过在它们之间绘制线段来连接一系列点的图. 这些点在它们的坐标(通常是x坐标)值之一中排序. 折线图通常用于识别数据中的趋势. R语言中的plot()函数用于创建折线图. 语法 在R语言中创建折线图的基本语法是 - plot(v,type,col,xlab,ylab) 以下是所使用的参数的描述 - v是包含数值的向量. 类型采用值"p"仅绘制点,"l"仅绘制线和"o"绘制点和线. xlab是x轴的标签. ylab是y轴的标签. main是

  • R语言绘制Vonoroi图

    deldir包绘制Voronoi图 #install.packages("deldir") library(deldir) # data set.seed(1) x <- runif(60) y <- runif(60) # Calculate Voronoi Tesselation and tiles tesselation <- deldir(x, y) tiles <- tile.list(tesselation) plot(tiles, pch = 19

  • 使用R语言绘制棒棒糖图火柴杆图教程

    目录 使用原生ggplot方法 1)生成数据 使用ggpubr包中的ggdotchart() 参考 使用原生ggplot方法 最容易也是最简单想到的方法是直接使用ggplot2包进行更新,这里需要使用ggplot本身的特性,通过图层叠加的方式,进行最终棒棒糖图的展现.(宽度极窄的柱状图配合散点图即可呈现) 1)生成数据 下面我们的展示均以此份数据为例: library(ggplot2) # Load data data("mtcars") dfm <- mtcars # Conv

  • R语言绘制Vonoroi图的完整代码

    deldir包绘制Voronoi图 #install.packages("deldir") library(deldir) # data set.seed(1) x <- runif(60) y <- runif(60) # Calculate Voronoi Tesselation and tiles tesselation <- deldir(x, y) tiles <- tile.list(tesselation) plot(tiles, pch = 19

  • R语言绘制维恩图ggvenn示例详解

    目录 引言 1.安装 2.基础用法 3.图形美化 4.提取交集部分并输出 引言 韦恩图,Venn diagram,常用图的一种,用来展示集合之间的特异性和共同性.现在有很多在线的网站都可以绘制,但是R来画也方便,其中ggvenn是基于ggplot2的专门绘制韦恩图的R包. 官方网站:https://github.com/yanlinlin82/ggvenn 1.安装 ggvenn在CRAN上,直接用Install.packages就可以完成安装: > install.packages("g

  • R语言绘制数据可视化小提琴图Violin plot with dot画法

    目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图 小提琴图之前已经画过了,不过最近小仙又看到一种貌美的画法,决定复刻一下.文献中看到的图如下: Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式.作图数据如下: Step2. 绘图数据的读取 data<-read.csv("your file path", header = T) #注

  • 利用R语言绘制时间序列图的操作

    数据 GDP.csv文件,存储1879~2019年河南省GDP数据 绘图 # 读取数据, 首先将excel 格式的转化为 csv 格式 再读取 h <- read.table(file = "C:/Users/PYY/Desktop/GDP.csv",sep = ",",header = T) # 转化为时间序列数据 GDP=ts(h$GDP,start = 1978,frequency = 1) # 绘图 plot(GDP) 补充:ts函数 ts() 函数:

随机推荐