【分析绘图】R语言实现一些常见的绘图

news2024/11/17 15:48:13

微生信-在线绘图网站

线性图

library(ggplot2)

x <- rnorm(100, 14, 5)  # rnorm(n, mean = 0, sd = 1)
y <- x + rnorm(100, 0, 1)
ggplot(data = NULL, aes(x = x, y = y)) +  # 开始绘图
  geom_point(color = "darkred") +  # 添加点
  annotate(
    "text",
    x = 13,  # 位置
    y = 20,
    parse = T,
    label = "x[1] == x[2]"
  )  # 添加注释

在这里插入图片描述

频率分布直方图

yx = c(1, 2, 3, 5)
hist(
  yx,
  col = "PINK",
  labels = TRUE,
  ylim = c(0, 10),
  main = "频率分布图",
  xlab = "X",
  ylab = "出现频数"
)

在这里插入图片描述

Venn图

library(VennDiagram)
library(grid)
venn.plot <- draw.pairwise.venn(
  area1 = 754,  # 区域1的数
  area2 = 687,  # 区域2的数
  cross.area = 139,  # 交叉数
  category = c("A", "B"),  # 分类名称
  fill = c("red", "blue"),  # 区域填充颜色
  lty = "blank",  # 区域边框线类型
  cex = 2,  # 区域内部数字的字体大小
  cat.cex = 1.5,  # 分类名称的字体大小
  cat.col = c("red", "blue"),  # 分类名称的显示颜色
  cat.pos = c(185, 185), #分类名称在圆的位置,默认正上方,通过角度进行调整
  # cat.dist = 0.09,   #分类名称距离边的距离(可以为负数)
  # cat.just = list(c(-1, -1), c(1, 1)),  #分类名称的位置
  # alpha = 0.7,  # 透明度
)

# 将venn.plot通过grid.draw画到pdf文件中
pdf("venn.pdf")
grid.draw(venn.plot)
dev.off()

在这里插入图片描述

柱状累计分布图

data <- matrix(c(2587, 4576, 2457, 2946, 6670, 5790, 5862, 5421), ncol = 4, nrow = 2)
colnames(data) <- c('B-neg', 'T-neg', 'B-pos', 'T-pos')
barplot(
  height = data,
  main = "15minB和T",  # 标题
  col = c('green', 'white'),  # 填充颜色
  legend.text = c('Total','Match'),#设置图例的内容
  args.legend = list(x = "topright", cex=0.7), #修改图例的位置
  xlim = c(0, 9),
  ylim = c(0, 12000), # Y轴范围
  width = 1.5,  # 必须指定xlim
)

在这里插入图片描述

箱体图

library(data.table)
library(ggplot2)

dat <- data.table(
  Spring = c(runif(9, 0, 1), 2),
  Summer = runif(10, 0, 1),
  Autumn = runif(10, 0, 1),
  Winter = runif(10, 0, 1)
)

dat1 <- melt(dat, measure.vars = c("Spring", "Summer", "Autumn", "Winter"))
ggplot(data = dat1, aes(x = variable, y = value, colour = variable)) + geom_boxplot()

在这里插入图片描述

热图

library(data.table)
library(pheatmap)

# 假设这是你的示例数据
b_data <- data.frame(
  Gene = c("Gene1", "Gene2", "Gene3", "Gene4"),
  Annotation = c("TypeA", "TypeB", "TypeA", "TypeB"),
  Value1 = c(1.2, 2.3, 0.8, 1.5),
  Value2 = c(0.9, 1.8, 1.1, 2.0),
  Value3 = c(2.5, 1.1, 1.9, 1.7)
)
# b_data <- data.frame(data.table::fread("pvalue.csv", sep = ",", header = T))

# 设置行名和注释
rownames(b_data) <- b_data$Gene
annotation_row <- data.frame(Type = b_data$Annotation)
rownames(annotation_row) <- b_data$Gene
colnames(annotation_row) <- "Type    "

# 提取数值矩阵
data <- as.matrix(b_data[, -(1:2)])

# 创建热图
pheatmap(
  log2(data + 0.01),
  cluster_rows = FALSE,  # 对行聚类
  cluster_cols = TRUE,  # 对列聚类
  treeheight_col = 0,  # 列聚类树高度,默认为50
  show_rownames = FALSE,
  show_colnames = TRUE,
  annotation_row = annotation_row,  # 对行进行注释
  main = "Heatmap (log2)"
)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/921533.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java面试题—2023年8月24日—YDZH

2023-08-24 10:54:28 北京 yī do zh h 答案仅供参考&#xff0c;博主仅记录发表&#xff0c;没有实际查询&#xff0c;不保证正确性。 面试题&#xff1a; 1、请你谈谈关于 Synchronized 和 lock ? 2、请简单描述一下类的加载过程?类加载器有几个种&#xff0c;分别作用是什…

微信小程序开发项目步骤【详细】

在平常是H5开发中已经不能满足我们的需求了&#xff0c;随着小程序的火热&#xff0c;越来越多的项目开发也离不开小程序的运用&#xff0c;目前常用的就是微信小程序&#xff0c;我们学完微信小程序后其他的小程序开发也是基本一样的&#xff0c;也为后面的uniapp开发做下一定…

港联证券|油价上涨对股票影响大吗?利好还是利空?

石油是现代国家国民经济的血脉&#xff0c;直接影响国民经济的发展。那么&#xff0c;油价上涨对股票影响大吗&#xff1f;利好仍是利空&#xff1f;为大家准备了相关内容&#xff0c;以供参阅。 香港港联证券有限公司&#xff08;百度一下港联证券&#xff09;成立于2021年1月…

vue 简单实验 v-model 变量和htm值双向绑定

1.代码 <script src"https://unpkg.com/vuenext" rel"external nofollow" ></script> <div id"two-way-binding"><p>{{ message }}</p><input v-model"message" /> </div> <script>…

AD域组策略开机脚本客户端不执行:解决方法

需求&#xff1a;本例实现的客户端计算机开机执行脚本&#xff0c;实现重置本地管理员的密码 1、创建组策略 2、在AD域中添加脚本 3、注意脚本的路径&#xff1a;就是打开 Show Files 目录&#xff0c;保证在客户端也能正常访问 4、本例建了2个脚本&#xff0c;一个是用来测试…

当《孤注一掷》照进现实,创邻科技Galaxybase助反诈一臂之力

“想成功&#xff0c;先发疯&#xff0c;不顾一切向钱冲&#xff1b;拼一次&#xff0c;富三代&#xff0c;拼命才能不失败。” 这看似振奋、实则让人背后发凉的口号来自于电影《孤注一掷》&#xff0c;它的背后是无数受害人血泪交织的受骗故事。 作为一部反诈题材电影&…

若依微服务版部署到IDEA

1.进入若依官网&#xff0c;找到我们要下的微服务版框架 2.点击进入gitee,获取源码&#xff0c;下载到本地 3.下载到本地后&#xff0c;用Idea打开&#xff0c;点击若依官网&#xff0c;找到在线文档&#xff0c;找到微服务版本的&#xff0c;当然你不看文档&#xff0c;直接按…

【从零学习python 】69. 网络通信及IP地址分类解析

文章目录 网络通信的概念IP地址IP地址的分类A类地址B类地址C类地址D类地址E类地址私有地址 进阶案例 网络通信的概念 简单来说&#xff0c;网络是用物理链路将各个孤立的工作站或主机相连在一起&#xff0c;组成数据链路&#xff0c;从而达到资源共享和通信的目的。 使用网络…

适用于各阶段Java程序员的面试备战/避坑指南

最近阅读了一些找工作的文章&#xff0c;特别是看了一位00后找工作的经历&#xff0c;历时2个月&#xff0c;使用了各种途径&#xff0c;也遇到了各类公司。看完之后&#xff0c;感慨后生可畏。其中涉及到了很多的技巧、踩坑和事项&#xff0c;提炼出来&#xff0c;以供大家享用…

互联网企业如何在线编写产品说明书?

互联网企业在线编写产品说明书是一个重要的工作环节&#xff0c;它能够帮助企业有效地传达产品的特点、功能和使用方法&#xff0c;提高用户的使用体验。 编写一份优秀的产品说明文档对于企业来说非常重要&#xff0c;它可以帮助用户理解产品的功能、使用方法和优势&#xff0c…

《深入浅出OCR》前言知识(一):机器学习知识总结

✨专栏介绍&#xff1a; 经过几个月的精心筹备&#xff0c;本作者推出全新系列《深入浅出OCR》专栏&#xff0c;对标最全OCR教程&#xff0c;具体章节如导图所示&#xff0c;将分别从OCR技术发展、方向、概念、算法、论文、数据集等各种角度展开详细介绍。 &#x1f468;‍&…

解决css英文内容不自动换行的问题

解决css英文内容不自动换行的问题 这里主要是针对CMS后台管理系统添加进入数据库&#xff0c;再抓取出来前端显示的英文不换行的问题的情况 1.一般常见的就是英文不自动换行&#xff0c;或者英文换行单词背截断的问题。 这种处理方法通过前端样式就可以解决&#xff0c;方法网…

R包开发1:RStudio 与 GitHub建立连接

目录 1.安装Git 2-配置Git&#xff08;只需配置一次&#xff09; 3-用SSH连接GitHub(只需配置一次) 4-创建Github远程仓库 5-克隆仓库到本地 目标&#xff1a;创建的R包&#xff0c;包含Git版本控制&#xff0c;并且能在远程Github仓库同步&#xff0c;相当于发布在Github。…

Vue报错 TypeError: this.getOptions is not a function

一般而言这是因为sass而报出来的错误 我们先删除node_modules&#xff0c;然后重新安装依赖 如果使用的是node-sass&#xff0c;则需要考虑正确的版本 示例 npm install sass-loader7.3.1 node-sass4.14.1 --save-dev 如果使用的是sass&#xff0c;则使用以下命令 npm i -…

第八章:Echarts统计功能【基于Servlet+JSP的图书管理系统】

Echarts统计 1.图书统计 通过Echarts根据不同的数据类型统计数据的数量。并且通过柱状图来展示 实现的步骤&#xff1a; 引入echars的js文件 然后定义柱状图展示的div 然后是基础的js代码 <script type"text/javascript">// 基于准备好的dom&#xff0c;初始…

亚马逊鲲鹏测评养号系统是怎么用的

亚马逊鲲鹏系统是一款可以全自动测评养号的软件&#xff0c;有批量注册亚马逊买家号、AI智能养号、自动绑定收货地址及支付卡、开通二步验证、根据关键词货比三家后进行加购、下单、留评等。 想要使用这款软件进行下单&#xff0c;那么首先我们需要有买家账号才行&#xff0c;买…

Python(八十六)字符串的编码与解码

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

腾讯、众安、卡斯柯、极狐GitLab 圆桌精华版:“狂飙”减速,效能登场

目录 Q1&#xff1a;近年来众多软件企业纷纷投身“效能革命”&#xff0c;降本增效的呼声越来越大&#xff0c;背后的原因是什么&#xff1f; 变化与成本方法论进步&#xff0c;点燃研发效能。 “狂飙”踩下刹车&#xff0c;“湖水岩石效应”加速显现。 Q2&#xff1a;当我…

【附安装包】Quartus II 18.0安装教程

软件下载 软件&#xff1a;Quartus II版本&#xff1a;18.0语言&#xff1a;英文大小&#xff1a;2.62G安装环境&#xff1a;Win11/Win10/Win8/Win7硬件要求&#xff1a;CPU2.0GHz 内存4G(或更高&#xff09;下载通道①百度网盘丨64位下载链接&#xff1a;https://pan.baidu.c…

长时间带什么耳机最舒服,分享长时间佩戴舒服的耳机推荐

时代在进步&#xff0c;科技在不断革新。近年来&#xff0c;一种崭新的耳机——骨传导耳机&#xff0c;如火如荼地进驻耳机市场&#xff0c;引起一阵热潮。不论是平日里的工作出勤还是运动时的挥洒汗水&#xff0c;相比传统耳机&#xff0c;骨传导耳机无疑更加贴合现代生活的需…