In R, qual è il miglior driver grafico per l'utilizzo dei grafici in Microsoft Word?


10

Uso R per creare grafici accurati che utilizzo nei documenti di Microsoft Office. Secondo questa pagina , la migliore qualità si ottiene con il driver PDF. Sfortunatamente, Word non supporta l'importazione di figure PDF. Cosa dovrei usare?


1
È possibile inserire figure PDF in Word. Usa "Inserisci oggetto". Nota a margine: se non hai mai usato LaTeX prima, consiglio vivamente di provarlo come alternativa a MS Word.
mark999,

1
@ mark999: grazie per il tuo suggerimento. L'ho provato, ma sfortunatamente non sono riuscito a trovare niente di meglio di un'icona pdf nel documento. Devo usare Word in questo contesto perché lavoro con altre persone che usano Word. LaTeX è bello, ma non è per tutti i progetti o per tutti.
static_rtti,

4
@ mark999 LaTeX semplicemente non è un'opzione per collaborare con persone non matematiche. Come spiega Gavin Simpson, la grafica di alta qualità può essere incorporata nei documenti di Word scegliendo i formati appropriati.
whuber

3
@ mark999 Purtroppo sono d'accordo con whuber. LaTeX non è in realtà un'opzione al di fuori di alcuni campi, e anche quelli che sono abbastanza intensivi in ​​matematica usano ancora Word come predefinito. L'ho considerato per un po ', poi ho lasciato perdere perché era più un problema di quanto valesse la pena collaborare.
Fomite,

1
@whuber, sono d'accordo con te ed EpiGrad sono parzialmente d'accordo con te. Probabilmente faccio il 90% dei miei scritti in LaTeX e il resto in MS Word (uso Word solo quando non ho scelta). static_rtti: Non so che cosa non va, perché ho inserito file PDF in documenti Word senza problemi.
mark999,

Risposte:


4

Se stai lavorando su un PC, è abbastanza conveniente inserire figure nei documenti di Office in formato emf tramite gli Appunti.

emf è un formato di grafica vettoriale nativo di Windows e ti permette di modificare le figure con gli strumenti di MS Office. Non è perfetto ma è un modo rapido per generare un rapporto semplice.

Se i tuoi documenti sono per nulla complicati, la gestione delle figure in MS Word è orribile.


12

Dipende da come utilizzerai i tuoi documenti di Word e da quali tipi di figure desideri includere nel documento.

Se le figure sono trame R standard con un numero moderato di punti / dati, i formati basati su vettori forniranno la migliore riproduzione e consentiranno un facile ridimensionamento delle dimensioni dell'immagine pur avendo dimensioni di file ridotte. L'EPS tramite postscript(...., onefile = FALSE, paper = "special")in questi casi sarebbe il formato migliore se stai inviando un PDF o stampando su una stampante laser che conosce Postscript. Sfortunatamente, Word utilizza un plug-in di terze parti per caricare figure EPS che producono un'anteprima bitmap scadente a bassa risoluzione che viene visualizzata sullo schermo - quando stampate si ottiene comunque EPS di alta qualità.

Se i grafici potrebbero essere considerati raster (grafici di superficie o grafici di immagini [mappe di calore] con un numero elevato di "pixel") o se i grafici contengono un numero molto elevato di punti, la conservazione delle informazioni vettoriali per tali grafici si tradurrà in un grande dimensione del file e costi di elaborazione elevati da caricare in Word e archiviare in memoria mentre si lavora sul documento. In tali casi, utilizzerei un TIFF ad alta risoluzione o un PNG tramite tiff()o png()rispettivamente. Consulta i file della guida per assistenza nell'impostazione della dimensione dell'immagine in pixel e della risoluzione. Questi dispositivi renderanno la figura come un'immagine bitmap, che se fornita di dimensioni / risoluzione sufficienti tollererà una certa quantità di riscalamento ma tenderà a essere memorizzata in modo molto più efficiente quando il numero di punti dati o celle è molto grande.

Considera anche che non tutti i dispositivi supportano la trasparenza, soprattutto perché i formati di file sottostanti non lo consentono; postscript()non supporta la trasparenza pdf()e lo png()fa. cairo_ps()supporta la trasparenza, ma in tal modo produrrà effettivamente un'immagine bitmap in formato EPS, che potrebbe non essere quella desiderata.

Si noti che se si salva il documento in PDF, le cifre della bitmap verranno ridimensionate in una certa misura. Dimentico come Word controlla questo, ma aveva due impostazioni nella finestra di dialogo Salva quando è stato selezionato il tipo PDF e uno di questi esegue il downsampling delle immagini per produrre file di dimensioni inferiori. Ciò sarà associato a una perdita di qualità, quindi fai attenzione a quale opzione scegli. Questo non è specifico per Word - OpenOffice.org e LibreOffice hanno le stesse funzionalità, ma offrono un controllo granulare molto più fine del modo in cui le immagini sono compresse e se sono compresse o meno. Ciò deriva dal fatto che il PDF è stato progettato sia per la riproduzione su schermo che su stampante. Non è necessaria l'alta risoluzione delle immagini se visualizzate sullo schermo per il Web. Immagini ad alta risoluzione producono file di dimensioni maggiori, quindi è possibile impostare la destinazione prevista del PDF,


1
Grazie, buon consiglio. PostScript sembra parlare bene a Word per la stampa. Purtroppo la scarsa anteprima sullo schermo è un problema non banale. Nel mio ambiente molti documenti di Word vengono inviati e letti sullo schermo.
Peter Ellis,

7

Se sei su Windows, prova win.metafile. È un formato vettoriale, se ricordo bene, e gioca bene con Word.


5

La grafica R in Windows può essere piuttosto complicata. Il problema più grande che ho è che l'antialiasing non funziona correttamente in Windows. Per qualche ragione ho bisogno di usare il plug-in del dispositivo Cairo per ottenerlo ben formattato.

Ho provato sia il pacchetto Cairo che cairoDevice e attualmente trovo cairoDevice come il più semplice e affidabile, per questo c'è un post StackOverflow .

Per utilizzare il pacchetto cairoDevice tutto ciò che serve è:

# Create the device
Cairo_png(filename="my_file_name.png",
    width=16,
    height=16,
    pointsize=18)
# Do a plot
plot(x, y)
# Saves the file
dev.off()

Puoi anche salvare in formato PDF / svg e quindi utilizzare Inkscape per modificare il tuo grafico, cambiare carattere ecc. E quindi esportarlo in formato png.


Sì. Un dispositivo png Cairo è quello che ho trovato produce le trame più belle per la visualizzazione sullo schermo in un documento Word. Su macchine per cui capabilities("cairo")è TRUE, in alternativa puoi semplicemente usare png(..., type="cairo")o forse qualcosa di simile png(..., type="cairo", res=200)per ottenere un output simile.
Josh O'Brien,

1
@ JoshO'Brien - Buon punto. Dalla mia risposta originale ho scritto due post sul blog su questo problema: gforge.se/2013/02/exporting-nice-plots-in-r e gforge.se/2013/03/exporting-plain-lattice-or-ggplot
Max Gordon,

Super, grazie per i collegamenti. In qualche modo avevo perso l' units="in"opzione fino a quando non li ho letti. Avrei fatto meglio conosciuta circa che un anno o due o 10 fa! Dal momento che la tua è la migliore risposta qui, potrebbe valere la pena modificarla o aggiungere un aggiornamento in alto type="cairo"sull'opzione con il dispositivo integrato, soprattutto dati i suoi vantaggi anche rispetto alle funzioni del pacchetto Cairo ...
Josh O ' Brien,

3

PDF, ps, SVG o eps sono dispositivi grafici basati su vettori . JPG, TIFF, PNG, ... ecc. Sono grafica raster. Quando si tratta di grafica raster, il compromesso è tra dimensioni e qualità. Regolando larghezza, altezza e altra formattazione è possibile mantenere un'alta qualità nella grafica raster . È possibile prendere il formato PNG o JPG per inserire l'immagine.

Le immagini SVG possono essere inserite nel documento MSWORD. Puoi controllare questo .


Nota che il dispositivo svg di R a volte ti dà raster quando non te lo aspetti.
Thomas Levine,

2

Anche il modo più semplice di scegliere i .pngfile è quello che ho fatto io. Eppure la parola li mostra piuttosto sfocati - almeno nel mio caso. Quando stavo usando Eviews ho provato .epsche ha provocato una serie di problemi, ma la qualità era migliore. Penso che alla fine devi scegliere tra il minore dei due mali.


Penso che la sfocatura sia dovuta all'algoritmo di ridimensionamento di Word. Potresti ottenere risultati migliori ridimensionando in un programma di modifica delle immagini prima di inserirlo in modo che venga visualizzato al 100% da Word.
James,

o crea il file png alla dimensione desiderata in primo luogo. Le impostazioni predefinite sono width = 480, height = 480, units = "px", pointsize = 12,ma puoi modificarle nel tuo script R
Henry,

2

Questo non risponde direttamente alla tua domanda, ma è possibile ottenere una migliore integrazione tra R e MS Word utilizzando il pacchetto R R2wd o il software commerciale illazione per R . Questi forniscono l'integrazione diretta simile a Sweave di R e MS Word, eliminando taglia e incolla o salva e carica e facilitando l'aggiornamento dei grafici nel documento dalla riga di comando. Non li ho usati, ma uso Sweave e raccomando una programmazione alfabetica , che è supportata da tutti questi strumenti.

Sweave è lo strumento di programmazione più utilizzato tra gli utenti di R. È LaTeX + R, ed è così che vengono scritte vignette R e molti libri e articoli di riviste.

Gli strumenti di Word + R promettono un'interfaccia meno scoraggiante per i nuovi utenti. LaTeX ha una curva di apprendimento più ripida di Word.

Tuttavia, a $ 199 / anno, l'inferenza per R rende difficile per gli altri riprodurre le tue analisi, a differenza di Sweave, che fa parte della base R.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.