Frage

Ich habe eine Frage zur Erstellung von zwei Plots hintereinander, bei der R mit dem Paket-Tikz-Gerät verwendet wird, um das Tikz an Latex zu senden.Was ich tun möchte, ist, 2 Diagramme hintereinander zu zeichnen.Was ich zuerst getan habe, war, Plots im par(mfrow=c(1,2))-Ambiente zu erstellen.Dies funktioniert jedoch nicht gut, da die Diagramme beim Drucken mit Latex wie vertikale Rechtecke aussehen.Was ich haben möchte, ist, zwei Bilder in einer Reihe zu bekommen, die quadratisch sind.Als nächstes habe ich ein Layout erstellt:

Layout<- matrix(c(1, 2), nrow = 1, ncol=2, byrow = TRUE)
nf <- layout(mat = Layout, widths = c(1,1),heights = c(1,1), respect = TRUE)
layout.show(nf)

und zeichnete die beiden Diagramme.Das Ergebnis ist quadratisch (das ist gut), aber wenn ich den beiden Darstellungen (in Latex) eine Beschriftung hinzufüge, ist sie weit von der Grafik entfernt.Was soll ich machen?Alle Gedanken sind willkommen!

War es hilfreich?

Lösung

Wie Greg erwähnt hat, müssen Sie die Breite und Höhe der Plot-Leinwand anpassen, wenn Sie quadratische Plots möchten, aber nicht, dass R große Leerzeichenränder ausfüllt.

Hier ist ein minimales Beispiel für die Verwendung von Sweave:

\documentclass{article}
\usepackage{Sweave}
\usepackage{tikz}
<<echo=FALSE,results=hide>>=
  require(tikzDevice)
@

\begin{document}

\begin{figure}
<<echo=FALSE,results=hide>>=
  # Standard LaTeX article class has a \textwidth of ~4.5in
  # Therefore, divide by 2 to get the right height.
  tikz('layout-ex.tex', width = 4.5, height = 2.25)

  Layout<- matrix(c(1, 2), nrow = 1, ncol=2, byrow = TRUE)
  nf <- layout(mat = Layout, widths = c(1,1),heights = c(1,1), respect = TRUE)
  layout.show(nf)

  dev.off()
@

  \centering
  \input{layout-ex}
  \label{fig:layout-ex}
  \caption{A layout with two sub-figures}
\end{figure}

\end{document}

Die resultierende Zahl sieht folgendermaßen aus:

Beispiel für die Verwendung von Layout

Andere Tipps

Sie haben respekt= TRUE angegeben. Dies bedeutet, dass Ihre Diagramme innerhalb des Geräts nur die Hälfte der Höhe einnehmen (wenn Sie die Standardeinstellungen auf dem Tikz-Gerät verwenden) und der Rest der Höhe mit Leerzeichen gefüllt ist.Wenn Sie eine Beschriftung hinzufügen, wird diese durch dieses Leerzeichen von den Plots versetzt.Wenn Sie das Tikz-Gerät öffnen, stellen Sie die Höhe und die Breite so ein, dass die Höhe fast der halben Breite entspricht. Am Ende sollten Sie viel weniger Leerzeichen haben, und die Beschriftung befindet sich näher an den Plots.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top