为什么r中的postscript或pdf驱动程序生成的图中线宽(lwd)小于1没有差异?

时间:2016-03-24 23:58:22

标签: r pdf graphics postscript

下面的代码在png中产生不同的线宽,但在postscriptpdf设备中的线宽相同。在OS X 10.10中查看pdf时会发生这种情况,但是在OS或Ubuntu下生成。 (以下三个样本图片)

我发现unhelpful thread on r-help表明这应该不是问题。但确实如此。

为什么?

devices <- list(png=png,
        eps=function(...) postscript(..., horizontal=TRUE),
        pdf=pdf)

for(d in names(devices)){
  devices[[d]](file=paste0('test.', d))

  par(mfrow = c(2, 2))
  for (LW in c(0.05, 0.1, .25, .5)){
    plot(height ~ age, data=Loblolly, pch='')
    for(sd in unique(Loblolly$Seed))
      lines(height ~ age, data = subset(Loblolly, Seed == sd), lwd = LW)
    title(LW)
  }
  dev.off()
}

Pdf on os x 10.10,R 3.2.3

Pdf on os x 10.10, R 3.2.3

ubuntu上的Pdf,R 3.2.4

Pdf on ubuntu, R 3.2.4

eps on ubuntu,R 3.2.4

Eps on ubuntu, R 3.2.4

1 个答案:

答案 0 :(得分:1)

正如用户42指出的那样,答案是它们确实有所不同。

这些差异在某些缩放级别,某些显示器或某些眼球上并不明显。它们也可能比位图格式(例如png)更不明显,其中明显宽度在缩放级别上保持一致。

例如,在OS X 10.10中,300ish放大预览300ish zoom in preview shows differences

在实际尺寸的同一查看器中进行比较 actual size shows no differences