Sto tracciando i coefficienti di correlazione (valori = 0.0: 1.0) per due isotopi misurati in ciascun individuo da due popolazioni. Mi piacerebbe avere un rapporto aspetto fisso per il mio grafico a dispersione in modo che l'asse X e Y siano esattamente della stessa dimensione, indipendentemente dal dispositivo grafico. Suggerimenti?Come definire il rapporto aspetto fisso per il grafico a dispersione
Questa è la mia prima trama in R, tutti i commenti sui perfezionamenti del mio codice sono apprezzati? Infine, vale la pena investire nell'apprendimento delle tecniche di tracciamento di base o dovrei passare direttamente a ggplot2 o reticolo?
Il mio script trama:
## Create dataset
WW_corr <-
structure(list(South_N15 = c(0.7976495, 0.1796725, 0.5338347,
0.4103769, 0.7447027, 0.5080296, 0.7566544, 0.7432026, 0.8927161
), South_C13 = c(0.76706752, 0.02320767, 0.88429902, 0.36648357,
0.73840937, 0.0523504, 0.52145159, 0.50707858, 0.51874445), North_N15 = c(0.7483608,
0.4294148, 0.9283554, 0.8831571, 0.5056481, 0.1945943, 0.8492716,
0.5759033, 0.7483608), North_C13 = c(0.08114805, 0.47268136,
0.94975596, 0.06023815, 0.33652839, 0.53055943, 0.30228833, 0.8864435,
0.08114805)), .Names = c("South_N15", "South_C13", "North_N15",
"North_C13"), row.names = c(NA, -9L), class = "data.frame")
opar <- par()
## Plot results
par(oma = c(1, 0, 0, 0), mar = c(4, 5, 2, 2))
plot(1,1,xlim=c(0:1.0), ylim=c(0:1.0), type="n", las=1, bty="n", main = NULL,
ylab=expression(paste("Correlation Coefficient (r) for ", delta ^{15},"N ",
"\u0028","\u2030","\u0029")),
xlab=expression(paste("Correlation Coefficient (r) for ", delta ^{13},"C ",
"\u0028","\u2030","\u0029")))
points(WW_corr$South_N15, WW_corr$South_C13, pch = 23, cex = 1.25,
bg ="antiquewhite4", col = "antiquewhite4")
points(WW_corr$North_N15, WW_corr$North_C13, pch = 15, cex = 1.25,
bg ="black")
axis(1, at = seq(0, 1.0, by = 0.1), labels = F, tick = TRUE, tck = -0.01)
axis(2, at = seq(0, 1.0, by = 0.1), labels = F, tick = TRUE, tck = -0.01)
abline(h=.86, v=.86, col = "gray60", lty = 2)
legend("topleft", c("North", "South"), pch = c(15, 23),
col = c("black", "antiquewhite4"), pt.bg = c("black", "antiquewhite4"),
horiz=TRUE, bty = "n")
par(opar)
Sì, fai come dico e non come faccio :-), e impara 'ggplot'. –
Hai chiaramente capito bene le basi della grafica di base, quindi consiglierei almeno di dare un'idea di ggplot2/lattice, dal momento che data la qualità di questa domanda non sarà un investimento enorme per te. Sono abbastanza diversi, ma li raccoglierai velocemente. Una volta che hai il senso della sintassi generale + flusso di ognuno sarai in grado di decidere su quale vuoi passare la maggior parte del tuo tempo. Ma è molto utile avere una familiarità di base con ciascuno. – joran