Comandi utili per formattazione e stampa figure per articoli:
I Grafici in R
Chi conosce R sa che le cose che sembrano semplici e immediate per un foglio elettronico diventano "difficili" da ricordare in R.
Ho deciso di scrivere questo post perchè puntualmente ogniqualvolta dovevo realizzare grafici per una pubblicazione, ripetevo sempre le stesse ricerche su come aumentare le dimensioni dei caratteri, inserire una legenda, scrivere caratteri speciali etc...
Così ora so dove guardare.
NOTA:
i colori nei grafici: utili le funzioni rainbow, topo.colors, terrain.colors.
utile link:
###########################################################################
Esempio1: Grafico in scala logaritmica, notazione scientifica e lettere greche
# log
# libreria sfsmisc
# eaxis
# PNG
###########################################################################
library(sfsmisc)
graphics.off()
diametro <- seq(0.1, 12, length.out= 1000)
massa <- 4/3*pi*(diametro*10^-6)^3*10^12
options(scipen=5)
png("C:/Users/ettor/Downloads/FIG.PNG", units="in", width=5, height=5, res=300)
plot(diametro, massa, type="l", xaxt="n", yaxt="n", xlab=expression(paste( "diameter (", mu, "m)")), ylab=expression(paste( "mass (", mu, "g)")), log="xy")
eaxis(1) # x axis
eaxis(2) # y axis
grid(lwd=2)
points(diametro[which(diametro<2.5)], massa[which(diametro<2.5)], col="green")
points(diametro[which(diametro<10)], massa[which(diametro<10)], col="red", type="l", lwd=2)
abline(v=2.5, col="GREEN", lwd=3)
abline(v=10, col="red", lwd=3)
dev.off()
#############################################################################
Esempio2: Grafico doppio asse con label con caratteri greci e caratteri ingranditi del 30%
# par
# cex
#expression()
#############################################################################
png("C:/Users/ettor/Downloads/FIG.PNG", units="in", width=10, height=10, res=300)
par(mar=c(5, 5, 5, 5) + 0.1)
plot(Dustlog[,1], cumsum(Dustlog[,6]), xlab="Log Time (HH:MM)", ylab=expression(paste("PM accumulation (", mu, "g/", m^3, ")")), type="l", cex.lab=1.3, cex.axis=1.3)
par(new = T)
plot(Dustlog[,1], DISS2,col = "red", xlab=NA, ylab = NA, axes = F, type="l")
mtext("Dissipation coefficient", side=4, line=3, las=3, col="red", cex=1.3)
axis(side = 4, col.axis = "red", col= "red", cex.axis=1.3)
dev.off()
###############################################################################
Esempio 3: Grafico con le barre di errori
#arrows
###############################################################################
misure <- c(1, 3, 0.154, 0.449) # misura del 9 ott
misure <- rbind(misure, c(2, 5, 0.166,0.474)) # 10 ott
misure <- rbind(misure, c(3, 1, 0.174,0.479)) # 11 ott
misure <- rbind(misure, c(4, 4, 0.18,0.49)) # 12 ott
misure <- rbind(misure, c(5, 3, 0.172,0.455)) # 15 ott
misure <- rbind(misure, c(6, 0, 0.133,0.3)) # 16 ott
colnames(misure) <- c("ID", "v. ventola", "S NO2", "S O3")
misure2 <- cbind(misure, c(6.072,9.163,10.78,5.782,7.205,7.094)) # aggiunti gli 0
misure2 <- cbind(misure2, c(9.051,9.052,9.579,7.478,9.357,9.156))
colnames(misure2)[5] <- "zeroNO2"
colnames(misure2)[6] <- "zeroO3"
## Aggiunta nuove misure
misure2 <- rbind(misure2, c(7, 3, 0.179, 0.467, 9.291, 11.302)) # 17 ott
misure2 <- rbind(misure2, c(8,2,0.180, 0.462, 9.725, 9.183))
graphics.off()
plot(misure2[,2],(77.607-misure2[,6])/misure2[,4], xlab="Speed fan Number", ylab="SO3 ppb NO2", ylim=c(100,280))
arrows(x0=misure2[,2], y0=(77.607-misure2[,6])/misure2[,4]-10, x1=misure2[,2], y1=(77.607-misure2[,6])/misure2[,4]+10, angle=90, code=3, length=0.04, lwd=0.4)
grid(col=("light blue"))
abline(h=150, col="red")
################################################################################
Esempio 4: la Legenda nel grafico
#legend
################################################################################
png("/home/ettore/Scaricati/FIG15A.PNG", units="in", width=5, height=10, res=300)
plot(soutput, type="l", lwd=2, xlab="% step time", ylab="% sensor response")
legend("bottomright", legend=c("LAB", "MONICA"), col=c("black", "red"), pch=1)
# pch è la forma dei pallini altrimenti si usa lty che è la forma delle linee
Commenti
Posta un commento