2011-09-06 17 views
7

Qualche idea su come calibrare cex in unità di misura del carattere?Come specificare la dimensione del carattere in un grafico (per l'output PDF)?

In particolare, mi piacerebbe lavorare con la famiglia di default 'Helvetica' e specificare le dimensioni dei caratteri per corrispondere alle dimensioni dei caratteri .doc. Ad esempio, utilizzare la dimensione carattere 12 per i titoli principali e la dimensione carattere 10 per i titoli degli assi.

Apprezzerei i vostri consigli e suggerimenti. Grazie!

risposta

2

La tua prima domanda richiede un po 'di sollevamento. C'è una buona serie di istruzioni qui: http://www.jameskeirstead.ca/typography/changing-the-fonts-in-r-plots/ Non sono a conoscenza di un "modo più semplice". Ma mi piacerebbe vederne uno.

Per la seconda domanda: Vedere ?par in particolare la parte su cex.

cex 
cex.axis 
cex.lab 
cex.main 

Inoltre, è possibile confusione con l'impostazione pointsize in ?pdf per regolare le dimensioni relative.

+0

Purtroppo la po 'alla fine di tale collegamento ha detto che non si applica ai dispositivi pdf. –

3

È possibile impostare il carattere predefinito su un grafico per trama.

par(family = 'Helvetica') 
plot(rnorm(10), main = 'Something In Helvetica') 

C'è anche un par('font') che è possibile utilizzare per impostare se il tipo di carattere in grassetto, corsivo, ecc Per le dimensioni, oltre al gruppo di parametri CEX menzionato da Brandon che permettono di impostare la dimensione del carattere come un termine relativo, c'è anche cin, cra, e credo di più che permettono di impostare le dimensioni in pollici o in pixel. Purtroppo, non è possibile specificare in una dimensione di carattere standard di 10 o 12.

Controllare l'aiuto per par() e leggerlo con molta attenzione.

+0

Signore, sei un genio. – by0

0

Forse provare a utilizzare pointsize = 12, all'interno del quartz()? https://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/quartz.html

quartz(pointsize = 12) 

Per qualche ragione, la mia famiglia = "Helvetica" non funziona, quando collocato all'interno quartz().

Entrambe le modifiche - il cambiamento di carattere e FontSize opere in questo ordine:

quartz(pointsize = 12) # define point size 
par(mar=c(3,3,1,1), family = "Helvetica") # define family 
plot(...) 

Così, per pdf() trama esportazione e quartz() uscita, in quanto non funzionano allo stesso tempo - sto usando il pdf() per esportare i miei grafici, ma quartz() solo per copiare un grafico nel documento MS Word

library(extrafont)  # library needed to have your fonts 
loadfonts() ## for pdf() 

# pdf plot export - now doesn't run, because now I want just check changes in my quartz() plotting 
# pdf("my_plot_in_pdf.pdf", height = 4, width = 4, family = "Helvetica") 

quartz(height = 4, width = 4, pointsize = 12) # check my changes in plot, if I want to export my plot, I just set #quartx(...) 
    par(mar=c(4,4,1,1), family = "Helvetica") 
    plot(cars, main = "Helvetica, 12", ylab = "y label", xlab = "x label", cex = 1) 
    dev.off() 

enter image description here

o modificare la mia famiglia e la dimensione punti:

quartz(height = 4, width = 4, pointsize = 20) 
par(mar=c(4,4,1,1), family = "Times New Roman") 
plot(cars, main = "Times New Roman, 20", ylab = "y label", xlab = "x label", cex = 1) 
dev.off() 

enter image description here

Problemi correlati