今天来学习一篇于2024年12月30日发表在Nature Communications上的文献中的小提琴图绘制,标题为:《Integrated multi-omics profiling reveals...(D NETs)相关标记物在两组之间的差异,并标注了显著性。...= list(c("NA", "AD")), # 添加显著性,y_position控制标记的y轴位置,textsize控制文本大小,size控制线的粗细 test = "t.test...axis.ticks.length = unit(0.3, "cm"), axis.ticks = element_line(size = 1.5), # 加粗x轴刻度线...axis.ticks.length = unit(0.3, "cm"), axis.ticks = element_line(size = 1.5), # 加粗x轴刻度线
主要是数据的分布,可以看出是双峰的还是多峰的 主要函数和参数 geom_violin()主函数 color, size, linetype:线条的颜色大小和线的类型 fill:填充颜色 trim:是否修剪小提琴尾部...# @ supp 分组变量,需要转换为因子 ToothGrowth <- get_data() # 需要的包 library(ggplot2) library(patchwork) library...(tidyverse) # 绘图 # 基本绘图参数设置 p % ggplot(aes(x = dose, y = len)) # 添加小提琴图并添加统计均值和标准差...点图 geom_dotplot() stackdir:点的堆叠方向默认为向上 stackratio:点的距离 color, fill:同之前 dotsize:点的大小 # 点图绘制并添加均值和标准差 p3...结束语 小提琴图不是很常用,也在一些杂志中见到过,但是不是很多见,了解一下就可,毕竟数据分布,还要涉及到后续分析的内容,和自己后续的分析方案是否配套。
https://github.com/blmoore/blogR 原始代码中抓取数据的部分好像不能用了,我稍微改动了一下,选取了2006年到2020年的数据,获取数据的代码这里就不放了,如果需要本文的示例数据可以知己在文末留言...image.png 作图代码 ibrary(ggplot2) ggplot(df, aes(x=year, y=auth_num, col=journal, fill=journal)) + stat_summary...image.png 根据上图确实可以看出学术期刊的作者数量确实是有增加的趋势的 这里新学到的知识点是使用stat_summary()函数添加置信区间,之前自己也实现过这个图,但是需要提前算好置信区间和平均值...,比如之前的推文 R语言ggplot2画带有置信区间的折线图和分组求均值遇到的一个问题,如果换成 stat_summary() 这个函数以后就方便很多 好了,今天的内容就到这里了 大家如果需要推文的示例数据和代码的话可以直接在公众号...、基因组学、群体遗传学文献阅读笔记; 3、生物信息学入门学习资料及自己的学习笔记!
默认的箱型图如下所示: 但是有时,我需要将箱子中默认的中位数那条线,改为平均值。...下面代码数据来源于上一篇博客:配对样本检验及绘图 - 简书 https://www.jianshu.com/p/e5a24590b5f6 > mean(dt_N) [1] 6.370483 > median...(dt_N) [1] 6.389692 > mean(dt_T) [1] 6.347574 > median(dt_T) [1] 6.328644 我们可以发现在平均值这块,N组为6.37, T组为6.34..., 而中位数这块,N组为6.38,T组为6.32。...箱型图中的横线为平均值: library(dplyr) library(ggplot2) library(ggpubr) theme_set(theme_pubclean()) plot <- ggplot
❝本节来复现「nature genetics」上的一张图,自定义绘制误差线图;下面小编就通过一个详细的案例介绍如何绘制此图;❞ 图形展示 ❝此图作为基础图形系列,但是又在基础图形的基础上做了一点细微的变化...,如误差线不展示「ymin&ymax」因此直接添加几何对象完成不能实现,此外也通过自定义绘制线条来进行注释以及Y轴标题添加上标;那么小编下方案例代码就来简单介绍如何用代码来解决这三个问题 ❞ 加载R包...library(ggtext) library(ggsci) 导入数据 df1 <- read_excel("41588_2022_1184_MOESM5_ESM.xlsx",sheet = 4) 定义因子...stat_summary(aes(taxon,SNP,color=taxon,fill=taxon),pch=22, fun.y="mean",geom="point"...,size=4, show.legend = F)+ # 添加均值 # 自定义绘制线条 geom_line(data = p_value1,aes(x = x, y
可以使用以下函数创建不同类型的错误栏: geom_errorbar() geom_linerange() geom_pointrange() geom_crossbar() geom_errorbarh...使用三种剂量水平的维生素C(0.5mg,1mg和2 mg)和两种递送方法[橙汁(OJ)或抗坏血酸(VC)]中的每一种: > library(ggplot2) > df <- ToothGrowth >...我们将绘制每组中Tooth长度的平均值。...标准差用于绘制图形上的误差线。首先,使用下面的辅助函数将用于计算每组感兴趣变量的均值和标准差。...geom="pointrange", color="red") 使用函数geom_dotplot()和stat_summary(): 平均值+/- SD可以添加为误差条或点范围
()添加预期寿命(lifeExp)的平均值柱状图 stat_summary(data=df, aes(year, lifeExp), fun = "mean", geom = "bar", alpha...= 0.7, fill="#00A08A") + # 添加预期寿命(lifeExp)的误差条 stat_summary(data=df, aes(year, lifeExp), fun.data...(x))) + # 添加人均GDP(gdpPercap)的平均值点 stat_summary(data=df %>% mutate(gdpPercap=gdpPercap/20), aes(year..., gdpPercap), fun = "mean", geom = "point", size=3, color="#F98400") + # 添加人均GDP(gdpPercap)的平均值线...geom = "line", color="#F98400") + # 设置y轴的比例和标签 scale_y_continuous(expand = c(0, 1), breaks = scales
dose, y=len)) + geom_violin(trim=T) #T改为F即完整的小提琴图 p 图片 #选择需要显示的x项 p + scale_x_discrete(limits=c("0.5...", "2")) 图片 2.2 添加数值 #添加中位值median,均值改mean p + stat_summary(fun.y=mean, geom="point", shape=23, size=2..., color="red") 图片 #中位数和四分位数 p + geom_boxplot(width=0.1) 图片 #均值和标准差 p x=dose...)+ labs(x = x, y = "Gene expression")+ #y轴 geom_violin()+ scale_fill_manual(values = color) +...= element_text(angle = 45, hjust = 1)) print(p1) dev.off() 图片 四、讨论 小提琴图和箱线图其实大同小异,都是常用于展示基因组间差异表达,很基础的描述性统计可视化图
#使用diamonds的数据子集作为绘图数据,克拉(carat)数为X轴变量,价格(price)为Y轴变量。...箱式图 箱线图通过绘制观测数据的五数总括,即最小值、下四分位数、中位数、上四分位数以及最大值,描述了变量值的分布情况。...2 坐标轴标尺修改(x , y) 本部分主要是对坐标轴做如下改变, 更改坐标轴名称 更改x轴上标数的位置和内容 显示对一个轴做统计变换 只展示一个区域内的点 更改刻度标签的位置 实现上面的这些可以使用scale_x...# 增加1组颜色变量映射,然后求均值并连线 g + aes(color = factor(vs)) + stat_summary(fun.y = mean, geom = "line") ?...ggplot2的图层设置函数对映射的数据类型是有较严格要求的,比如geom_point和geom_line函数要求x映射的数据类型为数值向量,而geom_bar函数要使用因子型数据。
一组分位数线(来自分位数回归) geom_rect 二维的长方形 geom_ribbon 彩虹图(在连续的x值上表示y的范围,例如Tufte著名的拿破仑远征图) geom_rug 触须 geom_segment...(由x和y指定位置,angle指定角度) stat_sum 绘制不重复的取值之和(通常用在三点图上) stat_summary 绘制汇总数据 stat_unique 绘制不同的数值,去掉重复的数值 stat_vline...几何对象(geom_)上面指定的图形属性需要呈现在一定的几何对象上才能被我们看到,这些承载图形属性的对象可能是点,可能是线,可能是bar stat :统计变换比如求均值,求方差等,当我们需要展示出某个变量的某种统计特征的时候...("text",x=23,y=200,parse=T,label ="x[1]==x[2]") labs : labs(x= "这是 X 轴", y = "这是 Y 轴", title = "这是标题"...一组连续数据可以映射到X轴坐标,也可以映射到一组连续的渐变色彩。
, aes(x=V2, y=V1)) + geom_violin() plot3 image.png 在此基础上加一个表示平均值的点 plot3 + stat_summary(fun=...mean, geom="point", shape=23, size=2) image.png 在这个基础上再添加抖动的散点图 plot3 + stat_summary(fun=mean,...y轴的标题和设置一个主题 plot3 + stat_summary(fun=mean, geom="point", shape=23, size=2)+ geom_jitter(position...,接下来增加一些代码使之更像附件中的图 更改x轴刻度的文本,并将其设置为斜体 plot3 + stat_summary(fun=mean, geom="point", shape=23, size...小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记
pch=21,width=0.1,size=2)+ stat_boxplot(geom="errorbar",width=0.1,linetype="solid")+ stat_summary...❞ df %>% ggplot(aes(case_control,logCPM)) ❝使用 df 数据帧创建了一个新的 ggplot 对象,并将 x 轴和 y 轴变量分别设置为 case_control...函数 aes() 指定数据帧中哪些列应用于图表美学。...❞ stat_summary(geom="crossbar", fun="mean", width=0.2, linetype="solid") ❝向图表添加了一条水平线,以显示每个 case_control...级别的 logCPM 的平均值。
主要内容: 准备数据 基本点图 在点图上添加摘要统计信息 添加平均值和中位数 带有盒子图和小提琴图的点图 添加平均值和标准差 按组更改点图颜色 更改图例位置 更改图例中项目的顺序 具有多个组的点图...,然后修改点的大小,然后翻转X,Y轴 library(ggplot2) # Basic dot plot px=dose, y=len)) +...第三步:在点图上添加摘要统计信息,使用函数stat_summary()可用于向点图中添加均值/中值点等。...第六步:添加平均值和标准差,使用函数mean_sdl。 mean_sdl计算平均值加上或减去常数乘以标准差。在下面的R代码中,使用参数mult(mult = 1)指定常量。...第七步:按组更改点图颜色,在下面的R代码中,点图的填充颜色由剂量水平自动控制: # Use single fill color ggplot(ToothGrowth, aes(x=dose, y=len
当X 1 和X 2相互依赖时,这些变量最终将彼此交互。换句话说,它们之间存在相关性。当两个自变量相互之间非常强烈地相互作用时,即相关系数接近1时,我们将在二维上为算法提供相同的信息,这不过是冗余。...逐步进行PCA的方法 PCA所做的是,它实际上是旋转坐标轴,使轴捕获几乎所有信息内容或方差。下面的剪辑直观地描述了它。我们将逐步了解如何实现这一目标。 [图片上传中......在这个新矩阵中,对角线为1,非对角线元素接近于零。该矩阵表示根本没有信息内容的数学空间。所有信息内容都在轴上,这意味着该轴已观察到所有信息内容,并且新的数学空间现在为空。...我们从每个维度上的各自的xis中减去了平均值,即已将所有维度转换为各自的Z分数,并且Z分数的获得使我们的数据居中。 对于二维数据,以上视觉效果表明,较早的轴是相应的x轴,现在是新的轴。...数据仍然以与原始空间相同的方式定向,只是现在它已经成为中心。 该信息被转换为协方差矩阵。在此协方差矩阵上,我们应用本征函数,它是线性代数函数。使用此代数将维度转换为一组新的维度。
# 添加分组线图,这里使用数据集2,用于绘制分组线图 p % ggplot(aes(x = dose, y = len, group = supp)) # 根据分组添加不同的线...# 上述的图形x变量均为离散变量,在实际的科研中,更多的是连续变量 #将x转换为连续变量 p_lianxu <- function(df3) { df3$dose <- as.numeric(as.vector...return(p) } df3 <- p_lianxu <- p_lianxu(dataset$df3) p_lisan <- p_lisan(dataset$df3) # 可以看出曲线存在差异,因为x的变量因子和连续的处理方式不同...# 设置亚组,大于2016年1月1日的数据 economics %>% filter(date > as.Date("2006-1-1")) %>% ggplot(aes(x = date, y =...# 更改线的宽度 # 这里使用的是为工作的和总人口的比例 # 因此出来的图为宽度不同的线 economics %>% ggplot(aes(x = date, y = pop)) + geom_line
4、标尺(Scale) 画图就是在做映射,不管是映射到不同的几何对象上,还是映射各种图形属性。...比如#把boxplot的中位线替换成了平均值来作图。 6、坐标系统(Coordinante) 坐标系统控制坐标轴,可以进行变换,例如XY轴翻转,笛卡尔坐标和极坐标转换,以满足我们的各种需求。...,饼图实际上就是柱状图,只不过是使用极坐标而已,柱状图的高度,对应于饼图的弧度,饼图并不推荐,因为人类的眼睛比较弧度的能力比不上比较高度(柱状图) #靶心图: ggplot(small)+geom_bar...在前面散点图上,我们已经见识过,加上了一个回归线拟合的图层。 #有了图层的概念,使用ggplot画起图来,就更加得心应手。...#做为图层的一个很好的例子是蝙蝠侠logo,batman logo由6个函数组成,在下面的例子中,我先画第一个函数,之后再加一个图层画第二个函数,不断重复这一过程,直到六个函数全部画好。
我们将绘制每组中牙齿长度的均值。...标准差用来绘制图形中的误差棒。...首先,下面的帮助函数会用来计算每组中兴趣变量的均值和标准差: #+++++++++++++++++++++++++ # Function to calculate the mean and the standard...data_summary(ToothGrowth, varname="len", groupnames=c("supp", "dose")) # 把剂量转换为因子变量...阅读ggplot2线图更多信息: ggplot2 line plots 有均值和误差棒的点图 使用函数 geom_dotplot() and stat_summary() : The mean +/-
当设定为包含两个数值的向量时 #两个数值分别对应于x轴范围的上下限. # samples: x轴上包含的样本量 # ...: 更多参数 predictvals 组预测线对应的x轴范围一致 predvals % group_by(sex) %>% do(predictvals( ....当x轴y轴都是分类变量的时候,气泡图可以表示网格点上的变量值 ##使用数据集HairEyeColor包含了592个学生头发眼睛颜色的分布 # 创建一个数据框,对男性组和女性组计数求和 hec 的均值一般是添加小钻石解决,使用stat_summary()函数添加你的钻石8 ggplot(birthwt, aes(x = factor(race), y = bwt)) + geom_boxplot...传递一个指定x和y带宽的向量到h,这个参数会被传递给实际生成密度估计的函数kde2d().在本例中,我们将在x,y轴方向上生成一个更小的带宽,以使密度估计对数据的拟合程度更高。
继续“一图胜千言”系列,箱线图通过绘制观测数据的五数总括,即最小值、下四分位数、中位数、上四分位数以及最大值,描述了变量值的分布情况。...箱线图能够显示出离群点(outlier),通过箱线图能够很容易识别出数据中的异常值。 ? 本文利用R语言的ggplot2包,从头带您绘制各式各样的箱线图。...geom_boxplot() + stat_summary(fun.y=mean, geom="point", shape=23, size=4, col = "red") + #添加均值 scale_x_discrete...geom_jitter()函数是geom_point(position = "jitter")的包装,binaxis="y"是指沿着y轴进行分箱; ggplot(ToothGrowth, aes(x=dose...2)更改箱子填充颜色 fill 填充色 ; color 箱线的外框颜色 #单组 设置颜色 ggplot(ToothGrowth, aes(x=dose, y=len)) + geom_boxplot(fill
aes:颜色(color颜色或边框颜色、fill填充颜色和 alpha透明度) 形状(linetype线型、size点的大小或线的宽度和 shape形状) 位置 (x, y, xmin, xmax, ymin...✦ 标度(Scales)是将数据的取值映射到图形空间,例如用颜色、大小或形状来表示不同的取值,展现标度的常见做法是绘制图例和坐标轴。...✦ 坐标系(Coordinate system, coord)描述数据是如何映射到图形所在的平面,同时提供看图所需的坐标轴和网格线。...image.png 数据调整及误差线增加 在ggplot2中可以直接结合stat_summary函数快速进行数据统计->链接 所以stat可以设置为summary,将柱状图的高度设置为各组的均值并联合stat_summary...p.png 组间差异性分析 使用stat_compare_means()函数。
领取专属 10元无门槛券
手把手带您无忧上云