运行tikzDevice代码时R 4.2.1崩溃,求助解决
R 4.2.1 搭配 tikzDevice 运行崩溃问题的解决建议
问题描述
在Windows 10 x64(build 22000)环境中,使用R 4.2.1(ucrt版本)及RStudio 2022.07.1 Build 554运行以下基础tikzDevice代码时,R GUI与RStudio均出现崩溃,重装tikzDevice_0.12.3.2后问题仍存在:
library(tikzDevice) tikz('simpleEx.tex', width = 3.5, height = 3.5) plot(1, main = 'Hello World!') dev.off()
sessionInfo信息:
R version 4.2.1 (2022-06-23 ucrt) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 22000) Matrix products: default locale: [1] LC_COLLATE=English_United States.utf8 [2] LC_CTYPE=English_United States.utf8 [3] LC_MONETARY=English_United States.utf8 [4] LC_NUMERIC=C [5] LC_TIME=English_United States.utf8 attached base packages: [1] stats graphics grDevices utils datasets methods [7] base other attached packages: [1] tikzDevice_0.12.3.2 loaded via a namespace (and not attached): [1] compiler_4.2.1 tools_4.2.1 filehash_2.4-3 grid_4.2.1
解决建议
检查LaTeX环境完整性:
tikzDevice依赖TeX环境生成输出,需确保已安装完整的TeX发行版(如MikTeX、TeX Live),且TeX的可执行文件路径已添加到系统环境变量。可在R中执行Sys.which('pdflatex')验证是否能正常定位pdflatex程序,若返回空字符串则需配置环境变量或重新安装TeX。调整tikzDevice调用参数:
尝试添加standAlone = TRUE参数生成独立TeX文档,同时指定编码为UTF-8,修改代码如下:library(tikzDevice) tikz('simpleEx.tex', width = 3.5, height = 3.5, standAlone = TRUE, encoding = 'UTF-8') plot(1, main = 'Hello World!') dev.off()更换tikzDevice版本:
当前使用的0.12.3.2版本可能存在兼容性问题,可尝试安装旧稳定版(如0.12.3),或通过devtools安装开发版:# 需先安装devtools包 install.packages('devtools') devtools::install_github('yihui/tikzDevice')升级R版本:
R 4.2.1发布时间较早,部分包在旧版本R上可能存在兼容性bug,建议升级到较新的R版本(如4.3.x系列)后重新测试。检查系统编码与图形设备适配:
尝试临时切换系统locale为中文UTF-8,或在调用tikz函数时明确指定编码参数,避免编码不匹配导致的崩溃。
内容的提问来源于stack exchange,提问作者MYaseen208
相关产品推荐
相关产品推荐

