首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >一键获取graphpad同款主题

一键获取graphpad同款主题

作者头像
生信修炼手册
发布于 2022-06-09 09:53:52
发布于 2022-06-09 09:53:52
50000
代码可运行
举报
文章被收录于专栏:生信修炼手册生信修炼手册
运行总次数:0
代码可运行

graphpad是一款商业化的绘图软件,支持多种可视化形式,而且样式美观,下图就是其典型的输出

graphpad的强大之处在于默认样式的美观,以及所有组件的可编辑,通过鼠标操作可以像ps一样添加和修改任何图片中的元素。

ggplot2则是基于R语言的开源免费工具,其特点在于自动化,所有的操作都通过代码来实现,为了进一步扩增ggplot2的功能,开发者在ggplot2的基础上开发了很多的扩展包,

今天要介绍的ggprism就是一个ggplot2的扩展包,其主要作用就是添加graphpad的主题和内置的颜色梯度,下面来看下其基本用法,首先绘制一个ggplot2基础版本的小提琴图加箱体图的复合图表,代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> library(ggplot2)
> library(ggprism)
> tg <- ToothGrowth
> tg$dose <- as.factor(tg$dose)
> base <- ggplot(tg, aes(x = dose, y = len)) +
+   geom_violin(aes(colour = dose, fill = dose), trim = FALSE) +
+   geom_boxplot(aes(fill = dose), width = 0.2, colour = "black") +
+   scale_y_continuous(limits = c(-5, 40))
> base

效果图如下

通过ggprism这个扩展包,可以实现如下功能

1. 加上ggprism的颜色梯度

代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> base + scale_color_prism("floral") + scale_fill_prism("floral")

效果图如下

2. 加上ggprism的主题

代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> base +
+ scale_color_prism("floral") +
+ scale_fill_prism("floral") +
+ theme_prism(base_size = 16)

效果图如下

3. 控制axis的样式

代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> base +
+ scale_color_prism("floral") +
+ scale_fill_prism("floral") +
+ theme_prism(base_size = 16) +
+ guides(y = "prism_offset_minor")

效果图如下

4. ggprism添加 pvalue 值

代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> p_vals <- tibble::tribble(
+   ~group1, ~group2, ~p.adj,   ~y.position,
+   "0.5",   "1",     8.80e-14, 35,
+   "0.5",   "2",     1.27e-7,  39
+ )
> base +
+ scale_color_prism("floral") +
+ scale_fill_prism("floral") +
+ theme_prism(base_size = 16) +  
+ add_pvalue(p_vals, label = "p = {p.adj}", tip.length = 0, label.size = 4)

效果图如下

ggprism提供了一种便利,可以通过ggplot2来实现ggprism的同款图片,从而通过代码批量绘制,避免了手工操作的繁琐。当然,这里只是针对基本图片,对于图片的个性化修饰,还是graphpad更加的得心应手。

·end·

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信修炼手册 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Spring Boot - 自动配置实例解读
Spring Boot - 自动配置实现原理中我们说了自动装配的原理,这里我们继续接着说,用一个自动装配的例子,来感受下Spring Boot 的魅力
小小工匠
2021/08/17
6210
Spring Boot - 自动配置实例解读
SpringBoot基础篇Bean之条件注入@ConditionalOnExpression
bean的条件注入,除了前面几篇博文分别介绍的通过@Conditional注解配合Condition接口的基本实现,以及如何使用条件注解@ConditionalOnBean和@ConditionalOnClass和基于配置的@ConditionalOnProperty
一灰灰blog
2019/03/14
21.3K0
SpringBoot基础篇Bean之条件注入@ConditionalOnExpression
源码学习系列之SpringBoot自动配置(篇二)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
SmileNicky
2019/11/18
3110
springboot注解
在这篇文章中,我们将探究Spring引导注解。我们将讨论基本的Springboot注解。
叔牙
2020/11/19
5560
编写自己的SpringBoot-starter
我们都知道可以使用 SpringBoot 快速的开发基于 Spring 框架的项目。由于围绕 SpringBoot 存在很多开箱即用的 Starter 依赖,使得我们在开发业务代码时能够非常方便的、不需要过多关注框架的配置,而只需要关注业务即可。
java思维导图
2019/07/19
7320
SpringBoot自动配置的原理及实现
2018-11-13 写blog 2020-11-13 参考其他blog添加流程图 2021-3-17 评论区说跨域的包没引入,这是我当时写脚手架时加的,对于当前blog没什么用,我加上了注释 //,免得被喷
全栈程序员站长
2022/08/22
4010
SpringBoot自动配置的原理及实现
【原创】Spring Boot 如何手写stater
很多人可能会觉得这种starter方式很牛B,添加一个starter就搞定了很多事情。今天咱们也来搞一个自己的starter。
田维常
2020/09/01
7760
第二十八章:SpringBoot使用AutoConfiguration自定义Starter
在我们学习SpringBoot时都已经了解到starter是SpringBoot的核心组成部分,SpringBoot为我们提供了尽可能完善的封装,提供了一系列的自动化配置的starter插件,我们在使用spring-boot-starter-web时只需要在pom.xml配置文件内添加依赖就可以了,我们之前传统方式则是需要添加很多相关SpringMVC配置文件。而spring-boot-starter-web为我们提供了几乎所有的默认配置,很好的降低了使用框架时的复杂度。 因此在使用xx.starter时
恒宇少年
2018/06/27
1.6K0
Springboot 系列(三)Spring Boot 自动配置
关于配置文件可以配置的内容,在 Spring Boot 官方网站已经提供了完整了配置示例和解释。
未读代码
2019/11/04
5510
Springboot 系列(三)Spring Boot 自动配置
SpringBoot条件注解全解析:核心作用与使用场景详解
Spring Boot 的条件注解(Conditional Annotations)是自动配置(Auto-Configuration)的核心机制之一。它们允许开发者根据特定的条件动态决定是否加载某个Bean或配置类,从而实现灵活的“按需配置”。本文将系统梳理所有常用的条件注解,结合代码示例说明其作用与使用场景。
Java微观世界
2025/04/15
2120
SpringBoot运作原理之@Conditional
在《SpringBoot运作原理解析之加载AutoConfiguration》中我们已经介绍了SpringBoot对配置文件的加载及相应类的实例化操作。那么,SpringBoot是如何之后该实例化哪些类的呢?这篇文章带大家了解一下@Conditional注解及其发挥的作用。
程序新视界
2019/05/26
1.5K0
SpringBoot中的@Conditional注解
在Spring的应用下,我们希望一些bean可以通过一些条件来判断是否需要实例化,并加载到spring容器中。
半月无霜
2023/03/03
5310
SpringBoot中的@Conditional注解
仅需四步,写一个springboot starter
只要你用Springboot,一定会用到各种spring-boot-starter。其实写一个spring-boot-starter
温安适
2020/07/24
8080
手写一个简单的starter
由于任何人都可以编写自己的 starter,为了区分官方的 starter 和个人的 starter,通常在命名上面会有一个规范。SpringBoot 官方提出规范如下:
悟空宇
2024/03/11
2270
手写一个简单的starter
阿里面试:看你springBoot用的比较溜来,说说springboot自动装配是怎么回事?
最近有个读者在面试,面试中被问到了这样一个问题“看你项目中用到了springboot,你说下springboot的自动配置是怎么实现的?”这应该是一个springboot里面最最常见的一个面试题了。下面我们就来带着这个问题一起解剖下springBoot的自动配置原理吧。
java金融
2020/07/25
8500
阿里面试:看你springBoot用的比较溜来,说说springboot自动装配是怎么回事?
spring boot自动配置原理
1)、SpringBoot启动的时候加载主配置类,开启了自动配置功能 ==@EnableAutoConfiguration==
程序员阿杜
2021/03/15
8870
spring boot自动配置原理
@ConditionalOnExpression多条件bean生效
当一个接口有多个实现,需要根据配置项选择bean时,可以使用@ConditionalOnProperty,但是只能判断一个条件。
IT云清
2021/12/09
2K0
Springboot自定义注解,支持SPEL表达式
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/15
8500
SpringBoot-Bean条件注入
  之前有篇文章Springboot 排除不想加载的配置只是排除,如果有些复杂场景需要根据条件来判断 就需要Spring 支持的另外一种方式 ——@Conditional注解。
OPice
2019/11/04
9980
Spring Boot入门(一)
第二个父项目用来加载所有的依赖版本,所以每次导入依赖的时候不需要书写版本号,spring boot默认会导入这个父项目中的版本。如果当前依赖在spring boot中没有进行依赖版本的控制,则需要书写版本号
石的三次方
2021/01/05
6140
相关推荐
Spring Boot - 自动配置实例解读
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档