ggplot 注释中的文本格式
Posted
技术标签:
【中文标题】ggplot 注释中的文本格式【英文标题】:Text formatting in ggplot's annotate 【发布时间】:2020-12-11 20:48:44 【问题描述】:可以用html代码注释吗?我正在尝试只为几个单词而不是整个文本着色。
library(tidyverse)
#> Warning: package 'ggplot2' was built under R version 4.0.2
mtcars %>%
ggplot(aes(x = hp, y = mpg)) +
geom_point() +
annotate(geom = "text", label = "I'm <span style='color: red;'>red</span> \n and i'm <span style='color: orange;'>orange</span>",
x = 250, y = 25)
由reprex package (v0.3.0) 于 2020 年 8 月 22 日创建
【问题讨论】:
【参考方案1】:您可以使用包“ggtext”。这是相当新的。您的示例所需的唯一更改是替换 geom:使用 "richtext"
而不是 "text"
。
library(tidyverse)
library(ggtext)
#> Warning: package 'ggplot2' was built under R version 4.0.2
mtcars %>%
ggplot(aes(x = hp, y = mpg)) +
geom_point() +
annotate(geom = "richtext", label = "I'm <span style='color: red;'>red</span> \n and i'm <span style='color: orange;'>orange</span>",
x = 250, y = 25)
可以使用fill = NA
去除背景。去掉边框线label.color = NA
可以用。
library(tidyverse)
library(ggtext)
mtcars %>%
ggplot(aes(x = hp, y = mpg)) +
geom_point() +
annotate(geom = "richtext", label = "I'm <span style='color: red;'>red</span>\n and i'm <span style='color: orange;'>orange</span>",
x = 250, y = 25, fill = NA, label.color = NA)
【讨论】:
您应该使用 标签而不是 \n 来实现所需的输出。 @alberson-miranda以上是关于ggplot 注释中的文本格式的主要内容,如果未能解决你的问题,请参考以下文章
R语言ggplot2可视化使用vjust和hjust参数对齐图像中的文本注释信息(左对齐右对齐居中)实战