使用Lattice和ggplot2有什么优缺点?

23

问题:使用Lattice与ggplot2有哪些优缺点?

3个回答

16

我很喜欢Roger Peng在他的ppt中将Base/Lattice/ggplot2包进行比较时所说的话:

https://github.com/rdpeng/CourseraLectures/blob/master/ggplot2_part1.pptx

Base

  1. “画家的调色板”模型
  2. 从空白画布开始构建图形
  3. 使用绘图函数(或类似函数)开始
  4. 使用注释函数添加/修改(文本、线条、点、轴)

优点:

方便,与我们构建图形和分析数据的思路相符合

缺点:

  1. 一旦开始绘制图形就不能返回(即调整边距);
  2. 需要事先计划
  3. 难以“翻译”给其他人看一旦创建了一个新图形(没有图形“语言”)。绘图只是一系列R命令

Lattice

通过单个函数调用创建图形(xyplot,bwplot等)

优点:

  1. 最适用于条件类型图形:查看y如何随着z的水平变化而变化
  2. 像边距/间距这样的东西会自动设置,因为整个图形一次性指定了
  3. 适合在一个屏幕上放置很多很多图形

缺点:

  1. 有时指定整个图形的单个函数调用不太方便
  2. 图形中的注释不直观
  3. 面板函数和下标的使用难以掌握,并需要进行深入的准备
  4. 创建之后无法“添加”到该图形

ggplot2

优点:

  1. 在Base和Lattice之间找到平衡点
  2. 自动处理间距、文本、标题,但也允许通过“添加”进行注释
  3. 与格子状物表面相似,但通常更易使用/更直观
  4. 默认模式为您做出许多选择(但您可以自定义!)

12
ggplot2 的缺点包括:(1) "魔法" 评估模型(即与基本 R 和其他软件包非常不同,可能更难理解);(2) 可能比 lattice 更难定制(超出软件包允许的范围);(3) 如下所答,没有对应于 persp() [base]、wireframe()/cloud() [lattice] 的三维透视图;(4) lattice 包含一些 ggplot 中没有的功能,如银行业(aspect ratio control);(5) 速度较慢;特别是对于 faceting,ggplot 比 lattice 慢。 - Ben Bolker


4

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接