【发布时间】:2013-05-15 22:47:30
【问题描述】:
在 R 中生成许多点的散点图时(例如使用 ggplot()),可能有许多点在其他点之后并且根本不可见。例如看下图:
这是几十万点的散点图,但大部分都在其他点的后面。问题是在将输出转换为矢量文件(例如 PDF 文件)时,不可见的点会使文件变大,并在查看文件时增加内存和 cpu 使用率。
一个简单的解决方案是将输出转换为位图图片(例如 TIFF 或 PNG),但它们会失去矢量质量并且尺寸可能更大。我尝试了一些在线 PDF 压缩器,但结果与我的原始文件大小相同。
有什么好的解决办法吗?例如某种过滤不可见点的方法,可能在生成绘图期间或之后通过编辑 PDF 文件?
【问题讨论】:
-
推荐的解决方案是十六进制图。但是,在 hexbin 图中,颜色表示每个 bin 中值的数量,您似乎将颜色用于其他用途。
-
+1 表示十六进制。其他选项是
sunflowerplot和bigvis包:github.com/hadley/bigvis -
@Roland 是的,正如你猜到的点的颜色是有意义的,所以对我来说 hexbin 不是一个好的解决方案
-
如果颜色有意义,你想如何处理隐藏在彼此后面的不同颜色的点?我不认为这是一个好的情节。
-
我有点怀疑“隐藏”点并不重要。如果这是真的,您应该在更早的时候将它们从您的分析中删除。我倾向于建议对这种情节使用部分透明度,例如
color = #FF00FF44以便您了解数据点的密度。