You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RStudio绘图无法找到字体问题求助(Mac High Sierra环境)

解决RStudio绘图无文字+字体找不到的问题

我之前在Mac High Sierra 10.13.3上用RStudio 1.0.153的时候,也碰到过几乎一模一样的糟心问题!结合自己踩坑的解决经验,给你几个亲测有效的尝试方向:

  • 彻底重置图形设备+加载系统字体
    单纯用dev.off()有时候不够彻底,试试先关闭所有图形设备,再用extrafont包扫描并加载系统自带字体——这些字体系统肯定能识别,不会找不到:

    # 关闭所有活跃的图形设备
    while (!is.null(dev.list())) dev.off()
    
    # 安装并加载extrafont包
    install.packages("extrafont")
    library(extrafont)
    
    # 扫描系统字体(第一次运行会弹窗,选"yes"即可,耗时可能稍长)
    font_import()
    # 加载字体到R的绘图设备
    loadfonts(device = "postscript")
    
    # 测试绘图,指定系统自带字体比如Arial
    plot(density(rnorm(1000)), family = "Arial", main = "密度图测试", xlab = "数值", ylab = "密度")
    
  • 切换RStudio的图形后端
    老版本RStudio默认的图形后端在High Sierra上可能有兼容性bug,试试换成Cairo后端:

    1. 打开RStudio顶部菜单栏的Tools > Global Options
    2. 切换到General标签下的Graphics选项
    3. 把Backend从Auto改成Cairo
    4. 重启RStudio后再尝试绘图
  • 手动指定字体文件路径
    如果上面的方法都不管用,直接硬编码系统字体的绝对路径,绕开R的字体识别问题:

    # 先查看系统字体目录里的字体(比如Arial的路径)
    system("ls /Library/Fonts/Arial*")
    
    # 用ggplot2绘图的示例(基础绘图同理)
    library(ggplot2)
    ggplot(data.frame(x = rnorm(1000)), aes(x = x)) +
      geom_density() +
      labs(title = "密度图测试", x = "数值", y = "密度") +
      theme(text = element_text(family = "/Library/Fonts/Arial.ttf"))
    
  • 检查系统字体权限
    有时候High Sierra的字体权限会出问题,导致R识别不到:

    1. 打开Mac的应用程序 > 字体册
    2. 点击顶部菜单栏的文件 > 验证字体,修复报错的字体
    3. 重启电脑后再打开RStudio尝试绘图

内容的提问来源于stack exchange,提问作者adustybowler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:40:01