我有一个用 R 生成的散点图,它显示了数千个重叠点。我需要使用 Inkscape 以 PDF 格式进一步图形化注释生成的 PDF。但是,处理这个文件根本不可行,因为点太多了(Inkscape 崩溃,处理速度太慢,点很难选择等)。
我想要“展平” PDF,即删除所有未显示的信息(隐藏在其他点堆之下的点等)。
我仍然想保留矢量信息,不想将图形栅格化。
这必须使用免费工具来完成,而我没有 Acrobat X。
我在 bash/linux 环境中搜索了 PDF 的扁平化,但是我找到了与处理 PDF 表单有关的工具,这绝对是一个不同的主题。
答案1
这是一个完美的例子,说明一个需要解决的大问题,但提出的问题却不合理。您已经在 R 中处理输入数据,那么为什么不在那里处理它呢?PDF 本质上是二进制的,因此您无法按原样对其进行任何操作。
最好的办法是在创建 PDF 之前在 R 中预处理数据(毕竟,这就是 R 的用途)。解决这个问题的最佳方法是循环遍历输入数据,并删除在特定阈值内共享相同坐标的所有其他点。我会将其包装成一个函数,这样您就可以尝试不同的阈值 - 但我相信您明白我的意思。
不要通过引入不必要的抽象层次和额外的文件格式来让事情变得过于复杂。你已经有了数据,与数据。
我相信以下 Stack Overflow 上的问题可能会有所帮助:
最后,如果适用,您可能需要考虑使用热图,因为它可以显示相同的信息(代表在某些区域发现的点的密度的颜色),尽管不必单独渲染每个数据点。