R语言作图——Violin plot with dot
时间:2022-07-26
本文章向大家介绍R语言作图——Violin plot with dot,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
原创:黄小仙
小提琴图之前已经画过了,不过最近小仙又看到一种貌美的画法,决定复刻一下。 文献中看到的图如下:
Step1. 绘图数据的准备
首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式。 作图数据如下:
Step2. 绘图数据的读取
data<-read.csv(“your file path”, header = T)
#注释:header=T表示数据中的第一行是列名,如果没有列名就用header=F
Step3. 绘图所需package的安装、调用
library(ggplot2)
library(reshape2)
# 注释:package使用之前需要调用
Step4. 绘图
data_melt <- melt(data)
ggplot(data_melt, aes(x = variable , y = value , fill = variable)) +
geom_violin(alpha = 0.5,aes(linetype=NA)) +
geom_jitter(shape=21,aes(fill=variable),position = position_jitter(width = 0.2))+
xlab("Gene")+ylab("Score")+
theme_bw()+theme(legend.position = "none")
关于geom_violin()里的linetype 如果不指定linetype,默认会有黑色边框
关于geom_jitter() 若指定jitter里的width=0,效果图如下:
jitter的shape可以有很多种类型
如果指定shape=24,效果图如下:
最近小仙的话痨病可能又犯了,忍不住想啰嗦几句。 最近小仙真的很没空,同时小仙又是一个对自己很宽容的人,本打算这几个月就不更新了。正巧最近看到村上春树的一本书,《当我谈跑步时 我谈些什么》,颇有感慨。本来我对这位作家的了解,仅限于“挪威的森林”这几个字,然而通过“跑步”这本书,意外得知村上从三十多岁高龄开始跑步,如无意外每天长跑,坚持了二十多年,着实有些惊讶。书中的言语小仙早已忘干净,只剩下一个感觉:我再忙,应该也比不上村上春树吧,他可以天天跑,我一个月写一篇总可以吧。 一开始写“R语言作图”,是网上觉得没有简单易懂的教程,就自己尝试创造一个;后来写是想多写几篇文章,获得更多的关注和粉丝;到现在是就像是对自己的考验,看自己能不能坚持。时间更迭,得到了一些帮助,也帮助了一些人,获得了赞同,也收获了举报。也许写文章也是一种长跑,风云变幻、形形色色就是旅程之风景。
- Java中如何判断一个字符串是Java代码还是英文呢?
- 将复杂查询写到SQL配置文件--SOD框架的SQL-MAP技术简介
- Java中实现找到两个数组交集的2种方法,开发实用
- Java Web中JSP的include 指令知识点总结——每日一语法学习
- Java反序列化漏洞从理解到实践
- ORM查询语言(OQL)简介--高级篇(续):庐山真貌
- Java中使用Hibernate系列之映射关联启动工作学习(第五节)
- Java中使用Hibernate系列之单向Set-based的关联学习(第四节)
- Java中使用Hibernate系列之加载并存储对象学习(第三节)
- Java中使用Hibernate系列之启动方法学习(第二节)
- Java中使用Hibernate系列之映射文件学习(第一节)
- Java中为图片添加水印效果的方法——实例代码
- Java中使用Hibernate系列之过滤器(filters)学习
- Node.js中的内存泄漏分析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法