ggplot 的注释中的文本格式

Alb*_*nda 4 r ggplot2 ggtext

是否可以使用 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)
Run Code Online (Sandbox Code Playgroud)

reprex 包(v0.3.0)于 2020 年 8 月 22 日创建

Ped*_*alo 5

您可以使用包“ggtext”。这是相当新的。您的示例所需的唯一更改是替换 geom: using"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)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

可以用来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)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

  • 您应该使用 &lt;br&gt; 标记而不是 \n 来实现所需的输出。@阿尔伯森米兰达 (2认同)