2016-01-07 20 views
8

Come è possibile regolare manualmente i limiti dell'asse x per ciascun pannello in un grafico stratigrafico?Modifica dei limiti dell'asse x su grafici stratigrafici (ad esempio grafici a più riquadri)

Ad esempio, ecco Stratiplot da analogue:

library(analogue) 
data(V12.122) 
Depths <- as.numeric(rownames(V12.122)) 

(plt <- Stratiplot(Depths ~ O.univ + G.ruber + G.tenel + G.pacR, 
        data = V12.122, type = c("h","l","g","smooth"))) 

enter image description here

Come potrei, per esempio, cambiare il XLIM di G.ruber a c (0,3, 0,9) e ad G.pacR c (0, 0,75)?

Oppure, un'altra possibilità, qui è strat.plot da rioja:

library(rioja) 
library(vegan) ## decorana 
data(RLGH) 
# remove less abundant taxa 
mx <- apply(RLGH$spec, 2, max) 
spec <- RLGH$spec[, mx > 3] 
depth <- RLGH$depths$Depth 
#basic stratigraphic plot 
strat.plot(spec, y.rev=TRUE) 

enter image description here

Come potrei, per esempio, cambiare il XLIM di TA004A a c (0, 20)?

Suppongo di dover fornire qualcosa per indirizzare il codice sottostante del reticolo/diagramma di base, ma non sono sicuro di come iniziare.

+0

Grazie per dare un'occhiata. Speravo in un po 'di ... "magia per passare alcuni argomenti, ma sembra che non sarà il caso. – Ben

risposta

5

Questa è una parte risposta rapida modificando i limiti dell'oggetto trama e utilizzando il pacchetto extra reticolo di ridimensionare i pannelli

# your data 
library(analogue) 
data(V12.122) 
Depths <- as.numeric(rownames(V12.122)) 

(plt <- Stratiplot(Depths ~ O.univ + G.ruber + G.tenel + G.pacR, 
        data = V12.122, type = c("h","l","g","smooth"))) 

# manually change the limits of second panel 
# this auto updates ticks and labels 
plt$x.limits[[2]] <- c(0.25,0.95) ; 

# resize the panels 
latticeExtra::resizePanels(plt, w=c(5,5,5,5)) 

che dà

enter image description here

Questo però non lo fa includere il piccolo spazio vuoto all'inizio di ogni segmento

+1

Grande, grazie, la tua risposta mi ha davvero aperto la possibilità di personalizzare ulteriormente questi grafici, molto utile. – Ben

+0

siete i benvenuti. (Se dai un'occhiata alla cronologia delle modifiche vedrai un modo per modificare direttamente i grobs e ottenere un maggiore controllo - ottieni i nomi di gobo chiamando 'getNames()' o 'grid.ls (print = FALSE) $ name' dopo la trama) – user20650

+0

Lo vedo, grazie ancora! – Ben