Nutzen Sie die folgende Plotten Code:ggplot Gitter mit konstantem x-Achsen-Skala, aber variierender Achsgrenzen
library(ggplot2)
library(cowplot)
a <- data.frame(a1=1:10, a2=1:10)
b <- data.frame(b1=1:5, b2=2*(1:5))
aplot <- ggplot(a, aes(x=a1, ymin=0, ymax=12)) +
geom_line(aes(y=a2))
bplot <- ggplot(b, aes(x=b1, ymin=0, ymax=12)) +
geom_line(aes(y=b2))
plot_grid(aplot,bplot, ncol=2)
Es ergibt zwei Seite-an-Seite Plots von identischen Abmessungen zu ähnlichen Linien. Aber die X-Achsenskalen sind ziemlich unterschiedlich. Tatsächlich hat die zweite Linie die doppelte Steigung des ersten.
Ich bin auf der Suche nach einer Möglichkeit, diese Figur so zu plotten, dass die Breite eines Diagramms durch die Grenzen seiner x-Achse skaliert wird, so dass die Neigungen visuell verglichen werden können. Die tatsächlichen Plots, die ich visualisieren möchte, sind fünf an der Zahl, und es werden keine y-Achsen-Beschriftungen mit Ausnahme der am weitesten links liegen. Ich kann grid.arrange()
verwenden, um sie alle in einer Reihe mit den Breiten zu plotten, die ich will, aber das Problem ist, dass ich nicht weiß, welche Breite jeder Platte zugewiesen werden muss, um sicherzustellen, dass sie richtig herauskommen (die Breite der Platte muss groß genug sein) um die Plot-Ränder, die Y-Achsen-Tick-Markierungen und den Y-Achsen-Text anzupassen). Ich kann die Ränder selbst einstellen und sie in meinen Feldbreiten berücksichtigen, aber ich kann keinen guten Weg finden, um herauszufinden, wie breit (z. B. in cm) der y-Achsen-Text ist.
Hm, was ist, wenn wir die x-Achse Maximalpunkt als das gleiche für die beiden Grundstücke eingestellt? Es ist anders als Ihre ursprüngliche Absicht, aber wir können immer noch die verschiedenen Steigungen vergleichen – zyurnaidi
klingt wie mit facetting und space = "free" wäre eine bessere Option – baptiste
@zyurnaidi In dem Fall habe ich es mit (versuchen, eine Figur für ein Papier zu machen), wäre es eine unakzeptable Platzverschwendung, die maximale x-Achsen-Spannweite in jeder Platte zu verwenden, wenn mehrere Platten nur ein Viertel der maximalen Reichweite überspannen. –