10.4 抗混淆位图输出

10.4.1 问题

你想要在 windows 操作环境下保存抗锯齿的位图结果(抗锯齿位图介绍)。

10.4.2 方案

类似于 pngjpeg 的标准图形设备可以将图形保存成 cairo、Xlib、 quartz 三种不同的文件格式。当使用 cairo,我们便可以获得抗锯齿化的图形结果。在 MacOSlinux 系统下,自动将图片保存为 cairo 格式,但是在 windows 系统下的相应参数是 NULL

绘图示例:

  1. # 设置伪随机数种子
  2. set.seed(1)
  3. # 生成符合正态分布的100个随机数
  4. x = rnorm(100)
  5. png("antialiasing_1.png", type = "cairo")
  6. plot(x)
  7. dev.off()
  8. #> quartz_off_screen
  9. #> 2

windows 系统环境下不可强行使用 type="cairo",需要借助 Cairo 工具包获取抗锯齿化结果。

  1. # 安装Cairo包 install.packages('Cairo')
  2. library("Cairo")
  3. # 设置伪随机数种子
  4. set.seed(1)
  5. # 生成符合正态分布的100个随机数
  6. x = rnorm(100)
  7. Cairo(width = 540, height = 380, file = "antialiasing_2.png",
  8. type = "png", bg = "white")
  9. plot(x)

10.4 抗混淆位图输出 - 图1

  1. dev.off()
  2. #> quartz_off_screen
  3. #> 2

10.4.2.1 提示

有关该部分的更多相关信息,参阅 Efficient R programming