首页 > 解决方案 > OpenBSD 上的 R 绘图显示图形,但文本被占位符图像替换

问题描述

我最近从 Arch 迁移到 OpenBSD。我的 R 代码通常按预期运行,但我的绘图行为很奇怪:图形的非文本元素很好,但所有轴标签、标题和图例文本都替换为方形 gif。下面的示例是一个基本图,但无论使用何种封装的图(例如 ggplot),都会出现相同的问题

plot(1:10)

示例图

对于这个基本情节,如果我首先发出命令

par(family="Arial")

那么文本/标签会正确显示,但这并不一定会延续到ggplot2。我猜它与我的字体配置有关,任何帮助表示赞赏。

这是我的会话信息():

R version 4.0.0 (2020-04-24)
Platform: x86_64-unknown-openbsd6.7 (64-bit)
Running under: OpenBSD puffyx1.my.domain 6.7 GENERIC.MP#234 amd64

Matrix products: default
BLAS:   /usr/local/lib/R/lib/libRblas.so.37.0
LAPACK: /usr/local/lib/R/lib/libRlapack.so.37.0

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_4.0.0

标签: ropenbsd

解决方案


这个链接帮助我解决了同样的问题。我安装了这个字体:

sudo pkg_add liberation-fonts

下面的测试代码:

ggplot(iris, aes(Sepal.Length, Sepal.Width, col = Species)) + 
    geom_point() + 
    theme(text = element_text(family = "Liberation"))

推荐阅读