原生的方法
分为3步:
(1)创建画布
(2)绘图
(3)关闭画布
实例
# 1. 创建画布
png(
filename = "name.png", # 文件名称
width = 480, # 宽
height = 480, # 高
units = "px", # 单位
bg = "white", # 背景颜色
res = 72) # 分辨率
# 2. 绘图
plot(1:5)
# 3. 关闭画布
dev.off()
此外类似的方法还有jpeg(), bmp(), tiff(), pdf(), svg()
ggsave()
ggsave只能保存基于ggplot2绘图的图片。只要是使用ggplot2绘图的都推荐使用ggsave保存图片。
实例
library(ggplot2)
p <- ggplot(mtcars, aes(wt, mpg)) + geom_point()
# ggsave 会默认保存上一个ggplot对象
ggsave(
filename = "name.png", # 保存的文件名称。通过后缀来决定生成什么格式的图片
width = 7, # 宽
height = 7, # 高
units = "in", # 单位
dpi = 300 # 分辨率DPI
)
Cairo 包保存图片
实例
library(Cairo)
# Cairo.capabilities() # 检查当前电脑所支持的格式
# 1. 创建画布
Cairo::CairoPNG(
filename = "name.png", # 文件名称
width = 7, # 宽
height = 7, # 高
units = "in", # 单位
dpi = 300) # 分辨率
# 2. 绘图
plot(1:5)
# 3. 关闭画布
dev.off()
# 此外类似的方法还有CairoJPEG(), CairoTIFF(), CairoPDF(), CairoSVG()等
关于dpi的解释
分辨率(DPI)指的是图像每英寸长度内的像素点数。 假如需要长10英寸,宽10英寸的,分辨率300的图片。对应的电脑里的像素就是10*300=3000像素。
建议
只要是使用ggplot2绘图的都推荐使用ggsave保存图片。其他的使用Cairo保存图片。
分享笔记