首页 > 解决方案 > 编译 R 后 R 和 RMarkdown 中缺少字体

问题描述

我按照https://support.rstudio.com/hc/en-us/articles/215488098-Installing-multiple-versions-of-R上的说明在计算机上从源代码安装了旧版本的 R (4.0.2) -on-Linux和我在 RStudio 中使用rmarkdown和打包以进行分析。knitr我还使用renvpackage 以获得更可重复的环境和代码。

我的问题是我的内联图缺少字体。这是一个例子:

我有一个有 2 列的表格,PT 和 M,我的代码是一个简单的 ggplot:

library(ggplot2)

df <- data.frame( "A" = c(1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7),
"M" = c(0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2),
"n" = c(3, 29, 13,  7,  0,  3,  0, 22, 13,  4,  3,  1,  0,  1,  8,  3,  4,  1,  0,  0,  0))

ggplot(data = df, aes(x=A, y=M, size = n)) + 
   geom_point()

在此处输入图像描述

我真的不知道问题出在哪里:Linux 中缺少软件包,R、RStudio 或rmarkdown?

有人有想法吗?

解决方案

我在我的 ubuntu 上安装了Helvetica.ttf.gz :

gunzip Helvetica.ttf.gz 
sudo mkdir /usr/share/fonts/truetype/myfonts
sudo mv Helvetica.ttf /usr/share/fonts/truetype/myfonts/.
sudo fc-cache -f -v /usr/share/fonts/truetype/myfonts/

标签: rimagefontsr-markdownrenv

解决方案


让我们尝试一些事情。

测试代码:

ggplot(diamonds, aes(clarity, fill=cut)) + 
     geom_bar() +
     annotate("text", x = c(1,5,7), y=10000, label = c("un", "deux", "trois")) + 
     ggtitle("Je ne parle pas le français")

找到“工具 -> 全局选项 -> 外观”并尝试将您的编辑器字体更改为 Ubuntu Mono(它是您的本机操作系统字体)。
https://askubuntu.com/questions/97469/what-is-the-default-debian-ubuntu-console-tty-font-所谓

然后说,你看到了什么。


也看那里

R图:pdf以外的设备的损坏/丢失字符

那里:_

rstudio在情节中损坏的字母和数字


推荐阅读