You need to enable JavaScript to run this app. 如何在VS Code中无需扩展、通过命令行运行R代码时显示绘图
优惠活动
大模型
产品
解决方案
定价
更多

如何在VS Code中无需扩展、通过命令行运行R代码时显示绘图

问题根本原因

Rscript 默认运行在非交互模式下,不会自动启动Windows系统的交互式图形设备,也不会主动渲染弹出绘图窗口,你代码中的plot(iris)语句执行后没有可显示的输出载体,因此看不到绘图结果。

可行解决方法

方法1:修改脚本实现运行后直接弹出绘图窗口

调整Hello World.r的代码,手动开启图形设备并设置窗口停留逻辑:

library(datasets)
# 手动启动Windows系统原生图形设备
windows()
plot(iris)
# 方案A:让绘图窗口停留10秒后自动关闭,可自行调整时间数值
Sys.sleep(10)
# 方案B:按下回车键后才关闭绘图窗口,适合需要长时间查看的场景
# invisible(readLines(n = 1))

修改完成后再运行rscript "Hello World.r"即可看到弹出的绘图窗口。

方法2:不用修改脚本,换用R的交互模式执行命令

直接在VS Code终端运行以下命令,调用R的交互模式执行脚本,会自动弹出绘图窗口:

r -e "source('Hello World.r')"

如果需要窗口停留,执行时可以加等待逻辑:

r -e "source('Hello World.r'); invisible(readLines(n=1))"

方法3:将绘图直接保存为本地图片文件

不需要弹出窗口的话,可以修改脚本把绘图导出为图片,运行脚本后直接打开生成的图片查看即可:

library(datasets)
# 开启png图像设备,设置输出路径和尺寸,也可换成jpeg()、pdf()等其他设备
png("鸢尾花数据集绘图.png", width = 800, height = 600)
plot(iris)
# 关闭设备,完成图片写入
dev.off()

运行脚本后同级目录下会生成对应的图片文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 18:45:02