在R语言中,绘制图形是数据分析和可视化的重要环节,其核心命令主要通过graphics
、ggplot2
等包实现,基础绘图函数如plot()
是R中最通用的绘图命令,可灵活创建散点图、折线图等多种图形。plot(x, y)
可直接绘制x和y变量的散点图,通过type
参数可切换图形类型,如type="l"
表示折线图,type="b"
表示点线结合图。plot()
函数还能根据数据类型自动判断图形类型,如对单变量数据默认绘制直方图或箱线图。

对于更复杂的图形,需借助扩展参数控制细节,通过main
、xlab
、ylab
可分别设置标题、x轴和y轴标签;col
参数控制颜色,pch
设置点的形状,lwd
调整线宽;xlim
和ylim
可指定坐标轴范围。plot(cars, main="汽车速度与制动距离关系", xlab="速度(mph)", ylab="制动距离(ft)", col="blue", pch=19)
会创建一个带标题和标签的蓝色散点图。
若需在同一画布绘制多图,可使用par()
函数设置图形参数。par(mfrow=c(2,2))
将画布分割为2×2的网格,后续绘图命令会依次填充子图,绘制完成后,通过par(mfrow=c(1,1)))
可恢复默认单图模式。
ggplot2
包是R语言中功能强大的高级绘图系统,基于“图形语法”理念,通过分层构建图形,核心函数ggplot()
需指定数据集和映射(如aes(x=变量1, y=变量2)
),再添加几何对象(如geom_point()
、geom_line()
)完成绘图。library(ggplot2); ggplot(mtcars, aes(mpg, wt)) + geom_point(color="red") + labs(title="汽车油耗与重量关系")
会创建一个红色散点图,并添加标题。ggplot2
的优势在于支持图层叠加,如+ geom_smooth(method="lm")
可添加线性拟合线,+ facet_grid(.~cyl)
可按气缸数分面绘图。
其他常用绘图函数包括:hist()
绘制直方图,如hist(rnorm(1000), breaks=30, col="lightblue")
;barplot()
用于条形图,需输入矩阵或向量数据;boxplot()
绘制箱线图,适合展示数据分布;pie()
创建饼图,但需注意其适用场景有限。

以下是部分基础绘图函数的参数说明:
函数名 | 常用参数 | 功能说明 |
---|---|---|
plot() |
main, xlab, ylab, col, pch, type | 通用绘图函数,支持多种图形类型 |
ggplot() |
data, aes, +geom_* | 分层绘图,需结合几何对象使用 |
hist() |
breaks, col, border | 绘制直方图,控制分组数和颜色 |
boxplot() |
x, y, col, names | 绘制箱线图,展示数据分布 |
相关问答FAQs
-
问:如何调整R图形中坐标轴的刻度间隔?
答:在基础绘图函数中,可通过axis()
函数自定义坐标轴。plot(1:10, xaxt="n")
会隐藏x轴刻度,再通过axis(1, at=seq(0,10,by=2))
设置刻度间隔为2,在ggplot2
中,使用scale_x_continuous(breaks=seq(0,10,by=2))
可调整x轴刻度间隔。 -
问:如何将R图形保存为高分辨率图片? 答: 使用
png()
、jpeg()
或pdf()
等函数设置输出设备,再执行绘图命令,最后用dev.off()
关闭设备。png("plot.png", width=800, height=600, res=120); plot(cars); dev.off()
会保存一个800×600像素、分辨率120的PNG图片。ggplot2
中,可通过ggsave("plot.png", width=8, height=6, dpi=120)
保存图形,需在绘图后调用该函数。(图片来源网络,侵删)