Ubuntu系统Rstudio中knit Rmd文件生成PDF时绘图标签丢失问题求助
RStudio交互式绘图正常、knit输出PDF时绘图文字全部消失解决方案
问题表现
RStudio内直接运行代码绘图显示正常,将.rmd文件编织为PDF文件时,绘图的坐标轴、标签、标题所有文字内容全部消失,仅保留图形线条。
- RStudio内绘图效果:

- PDF输出绘图效果:

已确认基础信息
- 全程无任何报错信息
- 文档内公式渲染正常
- 运行环境:Ubuntu 20.04 + RStudio 2021.09.0 + R 4.1.1
已尝试无效操作
- 安装全套X11相关依赖包
- 安装texlive-latex-extra
- 重启RStudio
修复方案
该问题为Linux环境下R默认PDF图形设备对字体兼容性不足导致,可通过以下任意一种方式修复:
方案1:全局指定cairo_pdf为绘图设备
在Rmd文件最开头添加全局设置代码块:
knitr::opts_chunk$set(dev = "cairo_pdf")
方案2:仅给绘图代码块指定cairo设备
修改绘图代码块的头部参数:
# 原代码块头部为 {r},修改为如下 {r dev="cairo_pdf"} # plotting cars data plot(cars)
方案3:在YAML配置中指定绘图设备
修改Rmd头部的YAML配置,添加dev参数:
title: "knitting example" author: "S_B04" output: pdf_document: dev: cairo_pdf extra_dependencies: - bbm - xcolor toc: yes
如果修改后仍有问题,可先安装系统基础字体包再重试:
sudo apt-get install fonts-dejavu
内容的提问来源于stack exchange,提问作者S_B04
相关产品推荐
相关产品推荐

