R 语言画图排雷 1 ,unable to open connection to X11 display
服务器未开启图形界面,apabilities的结果如下:
PNG画图代码
# 生成示例数据
x <- rnorm(100)
y <- x + rnorm(100, sd = 0.5)
# 设置 PNG 文件路径
png("scatter_plot.png")
# 绘制散点图
plot(x, y, main = "散点图示例", xlab = "X 轴", ylab = "Y 轴")
# 关闭图形设备
dev.off()
报错表明 R 无法启动 PNG 设备,通常是因为缺少 X11 显示服务器,这与 “服务器未开启图形界面” 矛盾,所以PNG只能寄了。
解决方法一(recommend)
options(bitmapType='cairo')
解决方法二,PNG->ragg:
# 极坐标螺线图
#install.packages("plotrix")
library(ragg)
library(plotrix)
# 生成数据
theta <- seq(0, 10 * pi, length.out = 500)
r <- theta / (2 * pi)
# 绘制极坐标螺线图
agg_png("spiral_polar.png")
polar.plot(lengths = r, polar.pos = theta * (180 / pi), rp.type = "p",
main = "阿基米德螺线", lwd = 2, line.col = "red")
dev.off()
解决方法三:PNG 使用type=“Cairo”
# 生成数据
theta <- seq(0, 10 * pi, length.out = 500)
r <- theta / (2 * pi)
x <- r * cos(theta)
y <- r * sin(theta)
# 使用cairo设备生成PNG图像
png("poly.png", type = "cairo")
plot(x, y, type = "l", col = "red", lwd = 2,
main = "阿基米德螺线", xlab = "x", ylab = "y")
dev.off()
不算失败的尝试:
library(httpgd)
hgd()
http://127.0.0.1:37931/live?token=Fvmdn5xx