我打算在ggplot中使用一种特定的字体,因为我只能找到.otf格式的字体,所以我可以用showtext
包来实现。
然而,我意识到新字体不包括欧元符号(€)。因此,当我在ggplot中更改字体时,我得到的是一个空格而不是符号。
library(tidyverse)
library(showtext)
font_add("Gulliver", ".../Windows/Fonts/Gulliver Regular.otf")
showtext_auto()
mtcars %>%
ggplot() +
geom_point(aes(x = disp, y = mpg)) +
theme(text = element_text(family = "Gulliver")) +
labs(y = bquote("mpg - (€ & " ~m^2 ~")"),
x = "€€€")
字符串
下面的代码是一个导致空格(左),如果我删除theme(text = element_text(family = "Gulliver")) +
行,虽然,所有欧元符号出现没有问题(右)。
我正在考虑以某种方式改变字体只使用在€符号的默认之一,并有我选择的字体中的所有其他文本.有没有一种方法来实现它或更容易的路径来解决这个问题?
1条答案
按热度按时间iyr7buue1#
也许有一个更简单的选择来获得你正在使用的字体的欧元符号,但是如果你想使用不同的字体家族,那么你可以使用
ggtext
来实现你想要的结果,它允许使用有限数量的HTML和CSS来设置文本的样式,并且足以添加一个上标。为此,我们必须使用ggtext::element_markdown
而不是element_text
。在reprex中,我将
text
元素的字体家族设置为times
,但对欧元符号使用sans
。字符串
的数据