热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ggplot中文本标签的不同部分的字体大小不同

提供了一个ubuntu,请滚动到底部我遵循了这些

提供了一个ubuntu,请滚动到底部

我遵循了这些instructions,但是我无法使其与脚本一起使用。他们似乎使用的是labs(),而不是我下面使用的方法。

我制作了这个情节:

ggplot中文本标签的不同部分的字体大小不同

但是,我希望文本的不同部分具有不同的字体大小。我在Photoshop中编辑了以下内容,以描述我要寻找的结果。

ggplot中文本标签的不同部分的字体大小不同

我使用了以下脚本:

Data sample

数据样本

ggplot(as.data.frame(out),aes(x = n.fjernet)) + theme +
geom_ribbon(aes(fill = model,ymin = lower,ymax = upper),alpha = .1) +
geom_line(aes(y = yhat,col = model),size=1) +
ggtitle("Lymph node yield") +
geom_segment(aes(x = 0,y = 1,xend = 100,yend = 1),lty="dashed",size=0.5) +
geom_segment(aes(x = 25,xend = 25,yend = 0.5),size=0.5,col="black") +
geom_point(mapping = aes(x = 25,y = 1),size=2,shape=16,col="black",alpha=0.5) +
scale_fill_manual(values = c("#DAE5F2","#F9E7E5","#E4F2F3","#FAF1D9"),name = "",labels = c("Overall survival\nNot adjusted to metastatic burden","Event-free survival\nNot adjusted to metastatic burden","Overall survival\nAdjusted to metastatic burden","Event-free survival\nAdjusted to metastatic burden")) +
scale_colour_manual(values = c("#2C77BF","#E38072","#6DBCC3","#E1B930"),"Event-free survival\nAdjusted to metastatic burden")) +
scale_x_continuous(name="",breaks=seq(0,100,by=25),limits=c(0,100),label=c("0","25\nas reference","50","75","100")) +
scale_y_continuous(name="Hazard ratio",breaks = seq(0.5,1.2,by=.1)) +coord_cartesian(ylim=c(0.5,1.25)) +
theme(axis.text.x = element_text(color = "grey20",size =11),axis.title.x = element_text(color = "grey20",size = 14,face="bold",margin=ggplot2::margin(t=12)),axis.text.y = element_text(color = "grey20",size = 11),axis.title.y = element_text(color = "grey20",margin=ggplot2::margin(r=12)),legend.key = element_rect(fill = "white"),plot.title = element_text(color = "grey20",size = 18,hjust = 0.5),plot.subtitle = element_text(hjust = 0.5),legend.text=element_text(size=12),legend.title=element_text(size=14),legend.position="top") +
guides(fill=guide_legend(nrow=2,byrow=TRUE))


您可以使用当前正在开发的ggtext软件包进行此操作。

# this requires the current development versions of ggplot2 and ggtext
# remotes::install_github("tidyverse/ggplot2")
# remotes::install_github("clauswilke/ggtext")
library(tidyverse)
library(ggtext)
df <- tibble(reference = seq(0,100,by = 5)) %>%
mutate(
overall_not_adj = 1 + .08/(-25) * (reference - 25),event_free_not_adj = 1 + .1/(-25) * (reference - 25),overall_adj = 1 + .12/(-25) * (reference - 25),event_free_adj = 1 + .14/(-25) * (reference - 25)
) %>%
pivot_longer(-reference,names_to = "lymph_node_yield",values_to = "hazard_ratio")
ggplot(df,aes(reference,hazard_ratio,color = lymph_node_yield)) +
geom_line() +
scale_color_manual(
name = "Lymph node yield",breaks = c(
"overall_not_adj","overall_adj","event_free_not_adj","event_free_adj"
),labels = c(
"Overall survival
Not adjusted to metastatic burden","Overall survival
Adjusted to metastatic burden","Event-free survival
Not adjusted to metastatic burden","Event-free survival
Adjusted to metastatic burden"
),values = c(
overall_not_adj = "#0072B2",overall_adj = "#009E73",event_free_not_adj = "#CC79A7",event_free_adj = "#E69F00"
),guide = guide_legend(title.position = "top",ncol = 2)
) +
theme_classic() +
theme(
legend.position = "top",legend.title.align = 0.5,legend.text = element_markdown(),legend.key.height = grid::unit(20,"pt")
)

由reprex package(v0.3.0)于2019-12-03创建


推荐阅读
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • ASP.NET2.0数据教程之十四:使用FormView的模板
    本文介绍了在ASP.NET 2.0中使用FormView控件来实现自定义的显示外观,与GridView和DetailsView不同,FormView使用模板来呈现,可以实现不规则的外观呈现。同时还介绍了TemplateField的用法和FormView与DetailsView的区别。 ... [详细]
  • 本文介绍了在序列化时如何对SnakeYaml应用格式化,包括通过设置类和DumpSettings来实现定制输出的方法。作者提供了一个示例,展示了期望的yaml生成格式,并解释了如何使用SnakeYaml的特定设置器来实现这个目标。对于正在使用SnakeYaml进行序列化的开发者来说,本文提供了一些有用的参考和指导。摘要长度为169字。 ... [详细]
  • Week04面向对象设计与继承学习总结及作业要求
    本文总结了Week04面向对象设计与继承的重要知识点,包括对象、类、封装性、静态属性、静态方法、重载、继承和多态等。同时,还介绍了私有构造函数在类外部无法被调用、static不能访问非静态属性以及该类实例可以共享类里的static属性等内容。此外,还提到了作业要求,包括讲述一个在网上商城购物或在班级博客进行学习的故事,并使用Markdown的加粗标记和语句块标记标注关键名词和动词。最后,还提到了参考资料中关于UML类图如何绘制的范例。 ... [详细]
  • 我用Tkinter制作了一个图形用户界面,有两个主按钮:“开始”和“停止”。请您就如何使用“停止”按钮终止“开始”按钮为以下代码调用的已运行功能提供建议 ... [详细]
  • 引号快捷键_首选项和设置——自定义快捷键
    3.3自定义快捷键(CustomizingHotkeys)ChemDraw快捷键由一个XML文件定义,我们可以根据自己的需要, ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了markdown[软件代理设置]相关的知识,希望对你有一定的参考价值。 ... [详细]
  • vb.net不用多线程如何同时运行两个过程?不用多线程?即使用多线程,也不会是“同时”执行,题主只要略懂一些计算机编译原理就能明白了。不用多线程更不可能让两个过程同步执行了。不过可 ... [详细]
  • R语言openxlsx、car、rmarkdown包安装报错: 句法分析器2行里不能有多字节字符;解决WARNING: Rtools is required to build R packages
    每次打开Rstudio这里会警告句法分析器2行里不能有多字节字符当安装car包时报错,安装Markdown包一直加载不出来,查了一下安装上了Rtool ... [详细]
  • MVC中的自定义控件
    怎么样创建自定义控 ... [详细]
  • Highcharts翻译系列之二十:曲线图例子(二)
    Highcharts翻译系列之二十:曲线图例子(二)代码 ... [详细]
author-avatar
vfjgjgv
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有