你如何将 R 中的 matplot 保存为 eps?

How do you save matplot in R as eps?

我正在尝试将 matplot 保存为 R 上的 eps。到目前为止,我在网上找到的所有说明要么是针对 Python 中的 matplotlib,要么是类似于保存通过直接右键单击图表,或使用代码行:

jpeg("name.jpg")
matplot(t, r[,1:n], type="l", lty=1, ylab="",xlab="Year") 
dev.off()

但是这些保存的图表 quality/resolution 太可怕了。我希望类似于

setEPS()
postscript("name.eps")
matplot(t, r[,1:n], type="l", lty=1, ylab="",xlab="Year") 
dev.off()

但不幸的是,这似乎不适用于 matplot。

jpeg 文件是一种丢失信息的高度压缩文件。它对将要打印或编辑的图形毫无用处。此外,默认尺寸和质量又小又低,因此您可以通过以更高质量打印更大的图像来改善结果(有关详细信息,请参阅 ?jpeg)。

postscript 文件 (EPS) 保留了因创建 jpeg 文件而丢失的信息,并存储了绘制图像的说明,而不是图像的位图。不清楚你的问题是什么,但这里有一个简单的例子:

首先,始终提供可重现的数据:

set.seed(42)
t <- 1950:1975
r1 <- rnorm(26, 35, 5)
r2 <- rnorm(26, 50, 5)
r3 <- rnorm(26, 65, 5)
r <- cbind(r1, r2, r3)

现在剧情:

setEPS()   
postscript("name.eps")
matplot(t, r[, 1:3], type="l", lty=1, ylab="",xlab="Year")
dev.off()
readLines("name.eps", 10)  # Check the results
#  [1] "%!PS-Adobe-3.0"                            "%%DocumentNeededResources: font Helvetica" "%%+ font Helvetica-Bold"                  
#  [4] "%%+ font Helvetica-Oblique"                "%%+ font Helvetica-BoldOblique"            "%%+ font Symbol"                          
#  [7] "%%DocumentMedia: a4 595 841 0 () ()"       "%%Title: R Graphics Output"                "%%Creator: R Software"                    
# [10] "%%Pages: (atend)"