R语言 在Mac上校准ggplot中的字体

fquxozlt  于 2023-01-03  发布在  Mac
关注(0)|答案(1)|浏览(212)

我在Mac上,需要为所有ggplots使用Calibri字体,但我无法使其与extrafontshowtext包一起工作:

font_import(prompt = FALSE, pattern = "calibri")

退货

Scanning ttf files in /Library/Fonts/, /System/Library/Fonts, /System/Library/Fonts/Supplemental, ~/Library/Fonts/ ...
Extracting .afm files from .ttf files...
Error in data.frame(fontfile = ttfiles, FontName = "", stringsAsFactors = FALSE) : 
  arguments imply differing number of rows: 0, 1

showtext

list_of_fonts <- as.data.frame(font_files())

grep(pattern = "Calibri", x = list_of_fonts$family, ignore.case = TRUE, value = TRUE)

我得到

character(0)

我在word中使用calibri没有问题,但是如何让它与ggplot一起使用呢?

theme_set(theme_minimal(
  base_family="Calibri"
))

In grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y,  :
  no font could be found for family "Calibri"
pbwdgjma

pbwdgjma1#

    • 备选案文1:**

这个问题似乎提到了here,您需要像这样降级Rttf2pt1软件包:

library(ggplot2)
library(showtext)
library(extrafont)
library(remotes)
remotes::install_version("Rttf2pt1", version = "1.3.8")
extrafont::font_import()

theme_set(theme_minimal(
  base_family="Calibri"
))
ggplot(data = mpg, aes(x = class)) +
  geom_bar(stat = "count")

创建于2023年1月1日,使用reprex v2.0.2

    • 备选案文2:**

另一个选择是下载calibre.ttf文件并将其放置在Mac上的库字体文件夹中。您可以使用font_paths()检查此操作。然后您可以如下所示导入它:

font_import(paths = "/Library/Fonts", pattern = "calibri.ttf")

可以使用以下代码检查计算机上是否存在该字体:

list_of_fonts <- as.data.frame(font_files())
grep(pattern = "Calibri", x = list_of_fonts$family, ignore.case = TRUE, value = TRUE)

请注意:我也在用Mac。

相关问题