Domanda

Sto creando una serie di trame in R (sto usando ggplot2, ma non è essenziale) e voglio essere in grado di salvare la mia uscita in modo da poter poi modificarlo per l'uso furthur, per esempio, potrei desidera spostare leggende circa, o regolare i colori ecc ho visto che ggplot2 ha un comando di salvataggio ma che sembra produrre PDF o bitmap, nessuno dei quali particolarmente modificabile

Come fanno le altre persone fare questo? Qualche buona idea?

Ecco alcuni esempi di codice per produrre una trama campione;

library(ggplot2)
dataframe<-data.frame(fac=factor(c(1:4)),data1=rnorm(400,100,sd=15))
dataframe$data2<-dataframe$data1*c(0.25,0.5,0.75,1)
dataframe
testplot<-qplot(x=fac, y=data2,data=dataframe, colour=fac, geom=c("boxplot", "jitter"))
testplot

Grazie

Paul.

È stato utile?

Soluzione 3

Grazie per le risposte, ho suonato in giro con questo, e dopo un po 'di aiuto dal mio amico Google ho trovato il Il Cairo pacchetto, che permette la creazione di file SVG, posso quindi modificare questi in Inkscape .

library(Cairo)
Cairo(600,600,file="testplot.svg",type="svg",bg="transparent",pointsize=8, units="px",dpi=400)
testplot
dev.off()
Cairo(1200,1200,file="testplot12200.png",type="png",bg="transparent",pointsize=12, units="px",dpi=200)
testplot
dev.off()

Ora devo solo giocare con le varie impostazioni per ottenere la mia trama buono come può essere prima di scrivere il file.

Altri suggerimenti

Altri formati modificabili:

Date un'occhiata a help(devices) per altri formati che sono disponibili:. Questi includono svg, pictex e xfig, che sono tutti modificabili in misura maggiore o minore

Si noti che i file PDF possono essere modificati, per esempio usando lo strumento Omnigraffle disponibile per OSX di Apple.

Altri modi per registrare i dati trama:

In aggiunta, è possibile registrare i comandi di R per il sottosistema grafico per la ripetizione in un secondo momento - dare un'occhiata a dev.copy:

 Most devices (including all screen devices) have a display list
 which records all of the graphics operations that occur in the
 device. 'dev.copy' copies graphics contents by copying the display
 list from one device to another device.  Also, automatic redrawing
 of graphics contents following the resizing of a device depends on
 the contents of the display list.

Uso rscript di creare una, la trama modificabile ripetibile:

Io di solito prendo una terza strategia, che è quello di copiare la mia sessione R in un file rscript, che posso correre più volte e modificare i comandi di tracciato fino a che non fa quello che voglio:

#!/usr/bin/Rscript
x = 1:10
pdf("myplot.pdf", height=0, width=0, paper="a4")
plot(x)
dev.off();

Con ggplot e lattice, è possibile utilizzare save per salvare l'oggetto complotto per disco e quindi load in un secondo momento e modificarlo. Ad esempio:

save(testplot, file = "test-plot.rdata")

# Time passes and you start a new R session
load("test-plot.rdata")
testplot + opts(legend.position = "none")
testplot + geom_point()

tasto destro del mouse sul terreno di uscita Copia come metafile quindi salvare trama in un documento word (tasto destro del mouse per modificare foto per convertire al complotto per Microsoft Office oggetto disegno)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top