Ekspor grafik ke file .eps dengan R

107

Bagaimana cara mengekspor grafik ke file format .eps? Saya biasanya mengekspor grafik saya ke file .pdf (menggunakan fungsi 'pdf'), dan ini bekerja dengan cukup baik. Namun, sekarang saya harus mengekspor ke file .eps.

obat
sumber
Anda dapat mencoba mencari di R dengan mengetik ??eps. Anda akan mendapatkan postscripthalaman atau setidaknya ps.options(yang akan mengarahkan Anda ke postscript).
Roman Luštrik
Lihat juga pdf2ps untuk mengonversi file pdf ke ps. Penggunaan shell:, $ pdf2ps plot.pdfakan membuat plot.ps.
Paul Rougieux

Jawaban:

128

Cara termudah yang saya temukan untuk membuat postscripts adalah sebagai berikut, menggunakan setEPS()perintah:

setEPS()
postscript("whatever.eps")
plot(rnorm(100), main="Hey Some Data")
dev.off()
CompEcon
sumber
3
Sungguh mengejutkan betapa bergunanya ini, dan betapa tersembunyi sebuah fitur itu.
CompEcon
Ya, menyelamatkan saya banyak tangkapan layar :)
chepukha
Terima kasih banyak, saya mendapatkan grafik dalam * .eps.
lbenitesanchez
50

Jika Anda menggunakan ggplot2untuk menghasilkan gambar, maka surat ggsave(file="name.eps")wasiat juga berfungsi.

Maiasaura
sumber
Ah, inilah yang saya butuhkan! Dan Anda dapat mengubah ukuran seperti ini:ggsave("name.eps", width = 20, height = 20, units = "cm")
DirtStats
31

The postscript()perangkat memungkinkan penciptaan EPS, tetapi hanya jika Anda mengubah beberapa nilai default. Baca ?postscriptuntuk detailnya.

Berikut ini contohnya:

postscript("foo.eps", horizontal = FALSE, onefile = FALSE, paper = "special")
plot(1:10)
dev.off()
Gavin Simpson
sumber
Terima kasih. Saya mencoba menggunakannya, tetapi ada kesalahan: margin grafik terlalu besar ...
the_drug
6
buat dimensi plot lebih besar: postscript("foo.eps", horizontal = FALSE, onefile = FALSE, paper = "special", height = 10, width = 10)misalnya. Satuannya dalam inci. Masalahnya adalah perangkat yang Anda rencanakan tidak cukup besar untuk memuat margin dari wilayah plot yang Anda gunakan.
Gavin Simpson
1
Saya membutuhkan * .ep yang diekspor agar berfungsi di Microsoft Powerpoint, yang pada awalnya tidak terjadi. Setelah beberapa percobaan dan kesalahan saya perhatikan saya harus mengatur tambahan parameter colormodel="rgb"postscript ().
agoldev
14

Cara lain adalah dengan menggunakan SVG berbasis Cairographics, PDF dan Perangkat Grafik PostScript. Dengan cara ini Anda tidak perlu melakukannyasetEPS()

cairo_ps("image.eps")
plot(1, 10)
dev.off()
USER_1
sumber
Ini adalah saran yang berguna. cairo_psberbeda postscriptdengan yang mendukung lebih banyak mesin terbang unicode, tetapi memiliki kelemahan yaitu semi-transparansi ditangani dengan buruk, dan akan sering memicu bitmap daripada keluaran vektor.
ms609
4

Ya, buka postscript()perangkat dengan nama file diakhiri dengan .eps, lakukan plot Anda dan panggil dev.off().

Dirk Eddelbuettel
sumber