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.


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()

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.


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()

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()

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().

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.