这图怎么画 | 相关分析棒棒糖图

news/2025/1/7 3:43:15/

0273174caa714debfe00a0a37c540f18.jpeg

Lollipop

写在前面

【这图怎么画】系列的图都来自VIP群里同学的提问。推文只是对图片的复现,不代表作者对图片展现形式的认同。欢迎同学们在群里分享有意思的图片。

本期图片

2520afa06fa28f61d980c85b9d37e965.png
相关分析棒棒糖图

Title:Integrated Analysis Identifies Four Genes as Novel Diagnostic Biomarkers Which Correlate with Immune Infiltration in Preeclampsia

Doi:https://doi.org/10.1155/2022/2373694

这是一个相关分析结果的展示图。这里作者分别用色阶条以及数值展现了pvalue,用点的大小表示相关系数绝对值。

复现结果

786409a28bed1239ce46482ba71a9791.png
复现结果

稍微调整了一下,原图把p值分层好多段,尤其是>0.05的部分,我觉得意义不大。

示例数据和代码领取

点赞在看 本文,分享至朋友圈集赞25个保留30分钟,截图发至微信mzbj0002领取。

「木舟笔记2022年度VIP可免费领取」

木舟笔记2022年度VIP企划

「权益:」

  1. 「2022」年度木舟笔记所有推文示例数据及代码(「在VIP群里实时更新」)。

    d3fd0351e2cfc528070f0c8075a9f63d.png
    资源合集
  2. 木舟笔记「科研交流群」

  3. 「半价」购买跟着Cell学作图系列合集(免费教程+代码领取)|跟着Cell学作图系列合集。

「收费:」

「99¥/人」。可添加微信:mzbj0002 转账,或直接在文末打赏。

496096c2474a8fac1aaff6b0752e8ca0.png

绘图

dat = read.csv("cor.csv")
head(dat)
# 对相关系数和p值转换为分类变量
dat$cor1 <- cut(abs(dat$cor),# 绝对值breaks = c(0, 0.3, 0.5, 0.7, 0.9, 1),labels = c("< 0.3","0.3 - 0.5","0.5 - 0.7","0.7 - 0.9","> 0.9"),right=FALSE) # right=FALSE表示表示区间为左闭右开
dat$pvalue1 <- cut(dat$pvalue,breaks = c(0, 0.001, 0.01, 0.05, 1),labels = c("< 0.001","< 0.01","< 0.05","> 0.05"),right=FALSE) 
# 排序
dat = dat[order(dat$cor),]
dat$Cell = factor(dat$Cell, levels = dat$Cell)
p = ggplot(dat, aes(x = cor, y = Cell, color = pvalue1)) +scale_color_manual(name="pvalue",values = c("#E69F00", "#56B4E9", "#009E73", "gray"))+geom_segment(aes(x = 0, y = Cell, xend = cor, yend = Cell),size = 1) +geom_point(aes(size = cor1))+theme_bw()+labs(size = "Cor")
p## 添加p值
dat$pvalue2 <- cut(dat$pvalue,breaks = c(0, 0.05,1),labels = c("< 0.05","> 0.05"),right=FALSE) 
p1 = ggplot()+geom_text(dat,mapping = aes(x = 0, y = Cell, color = pvalue2, label = round(pvalue,3)))+scale_color_manual(name="",values = c("red", "black"))+theme_void()+guides(color=F)p1
library(patchwork)
p|p1ggsave("lollipop.pdf",width = 8,height = 5)
f0961fe7730752ad9c0bf6c37ce50d2e.png
result

后续在AI里调整一下位置即可~当然用基础函数或其他办法也能够直接画出来,这里我就不想了,有更好的办法的同学可以私信我。

往期内容

  1. (免费教程+代码领取)|跟着Cell学作图系列合集

  2. Q&A | 如何在论文中画出漂亮的插图?

  3. 跟着 Cell 学作图 | 桑葚图(ggalluvial)

  4. R实战 | Lasso回归模型建立及变量筛选

  5. 跟着 NC 学作图 | 互作网络图进阶(蛋白+富集通路)(Cytoscape)

  6. R实战 | 给聚类加个圈圈(ggunchull)

  7. R实战 | NGS数据时间序列分析(maSigPro)

  8. 跟着 Cell 学作图 | 韦恩图(ggVennDiagram)


c6ee9df64a128a14826c45fdd1019cdc.png
木舟笔记矩阵

http://www.ppmy.cn/news/701762.html

相关文章

什么是KubeEdge?

什么是Kubernetes&#xff1f; Kubernetes&#xff08;K8s&#xff09;是一款由谷歌开源的容器集群管理系统。它基于容器技术&#xff0c;为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列功能。 什么是KubeEdge&#xff1f; KubeEdge做的是基于k8s构建&a…

FastDDS源码剖析:前置知识梳理(DDS、RTPS、NACK)

目录 DDS 什么是 DDS 协议&#xff1f; 为什么需要 DDS 协议&#xff1f; DDS 是如何工作的&#xff1f; DDS的组成 RTPS 什么是 RTPS 协议&#xff1f; 为什么需要 RTPS 协议&#xff1f; RTPS 是如何工作的&#xff1f; 负向确认机制NACK DDS 什么是 DDS 协议&…

i7 1165g7和i5 11320h的区别

i7-1165G7处理器相关参数&#xff1a;4 核 8 线程&#xff0c;主频 2.8GHz&#xff0c;睿频 4.7GHz&#xff0c;12MB 三级缓存。 选i5 11320h还是i71165g7这些点很重要http://www.adiannao.cn/dy i5-11320h参数情况&#xff1a;其工艺制程为10nm&#xff0c;四核八线程&#…

2. 注册platform

这里先分析platform 对应的dts内容如下 i2s0_8ch: i2sff800000 {compatible "rockchip,rv1126-i2s-tdm";reg <0xff800000 0x1000>;interrupts <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;clocks <&cru MCLK_I2S0_TX>, <&cru MCLK_I2S0_RX&g…

GNS3配置dhcp环境

一、配置说明 GNS3版本&#xff1a;2.2.40.1 二、创建拓扑图 图中包含一台msf攻击机&#xff0c;一台带有漏洞的靶机&#xff0c;二者用交换机连接。在最上面有一个路由器。 配置msf机器和靶机为dbcp 将dhcp相关内容放开&#xff08;去掉#注释&#xff09;。 # # This is a …

安卓手机分辨率修改工具的使用方法

分辨率都可以修改&#xff0c;没错&#xff0c;分辨率可以修改&#xff0c;而且可以一键修改&#xff0c;这节我们就是要给大家演示如何修改手机屏幕的分辨率高宽。 同样的&#xff0c;我们需要借助琢石模拟器这个修改神器帮我们完成分辨率的修改工作&#xff0c;如果您的手机没…

android 获取手机分辨率

使用displayMetrics 创建的对象来获得屏幕分辨率。 protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); // setContentView(R.layout.w3_14) ;LinearLayout ll new LinearLayout(this) ;Button btn new Button(this) ;final TextVi…

手机设置分辨率命令

分辨率设置命令 adb shell wm size 480X480 adb shell wm density 240 分辨率恢复命令。 adb shell wm size reset adb shell wm density reset