【问题标题】:Reduce size of plots in EPS format以 EPS 格式减小绘图的大小
【发布时间】:2010-11-12 21:56:12
【问题描述】:

我有一个包含数百个项目的直方图,我为此做了一个 Q-Q 图。这导致 EPS 为 2.5 兆字节。这对于一个只将包含在出版物中并且不会以 100 倍放大倍率查看的数字来说太过分了。

R 中是否有任何选项可以以某种方式输出更小的 EPS?我搜索了文档无济于事。或者是我最好的选择,比如说,之后以 300 dpi 光栅化它?如果是这种情况,对这项工作的工具有什么建议吗?

情节的 R 代码没什么花哨的:

postscript(filename)
qqnorm(n, main=title))
qqline(n)
dev.off()

编辑: 哇!我的问题提到了输出 EPS,然后将其转换为某种光栅格式。当然,我首先可以从 R 生成 PNG。

【问题讨论】:

    标签: r postscript eps


    【解决方案1】:

    我刚刚尝试了几件不起作用的事情 - 我将它们包括在这里是为了避免其他人浪费他们的时间。作为参考,我在上面的代码中设置了n <- rnorm(1e5)

    不起作用的事情:

    1. 设置colormodel <- "gray"

    2. 使用不同的 pch 值。 (其他一些值增加文件大小,但我发现没有一个可以减小它。)

    3. 设置useKerning = FALSE

    4. 更改宽度和高度设置。

    5. 使用 pdf 代替 postscript。

    6. 使用 Cairo 包中的 CarioPS。

    鉴于此,我认为您不太可能使用矢量格式来减小文件大小。这意味着您必须使用光栅格式(很可能是 PNG)。

    【讨论】:

      【解决方案2】:

      你有三个选择。

      1. 接受大文件
      2. 将文件保存为 png 等非矢量格式
      3. 在数据的随机样本上创建 QQplot。几百个点的随机样本应该会给出类似的 QQplot。

        后记(文件名) 样品

      【讨论】:

        【解决方案3】:

        在 R-list link text 的讨论中,我了解了 pdftk。使用n= 1e5 将 pdf 大小从 6mb 减少到 600k。很整洁!

        【讨论】:

          【解决方案4】:

          在GS视图中,将我们的文件转换为pdf,然后再转换为PS或EPS,最终文件大小减少5-7倍。

          【讨论】:

            【解决方案5】:

            好吧,EPS 仅包含绘制绘图的说明,因此其大小很大程度上取决于您拥有多少数据点。在使用压缩的 PDF 中,它可能会更小,但您最好的选择可能是使用光栅格式,它可以变得更小。

            我怀疑 EPS R 生成的已经尽可能小了(我确信他们在 Postscript 中有一个自己的函数来处理使用单字符名称等绘制数据,因为这是相当普遍的做法)。我怀疑有很多方法可以优化它。不过,我可能弄错了,但很可能 R 是唯一具有足够高级信息来合理压缩输出的程序。

            【讨论】:

            • PDF 生成 1 mb 大小的文件,仍然太大。我想我可以应用数据集采样来减少点数,但是很难不丢失一些有趣的异常点。
            【解决方案6】:

            OP通过直接生成PNG文件解决了这个问题。我不得不使用 EPS,因为 PNG 和其他格式使图像具有别名。无论如何,我都必须转换为 EPS 才能包含到 LaTeX 文件中。

            我使用 GIMP 导入从 R 图像函数生成的 10 MB eps 文件。然后旋转、展平并保存为 300KB 的 eps 文件。拼合将所有图层合并为一个图层并删除 Alpha 通道以实现透明度。经过这种转换后,LaTeX 可以轻松处理。

            在转换之前,Ghost Script 中的图像渲染非常缓慢,并且根本无法在 epsviewer 中渲染。 GIMP 使用 Ghost Script 作为前端,因此导入速度很慢,但是一旦导入,所有处理和渲染都非常快。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-05-28
              • 1970-01-01
              • 2019-02-13
              • 1970-01-01
              • 2017-03-21
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多