%20plotten%3F.png)
In der statistischen ProgrammierspracheR
gibt es zwei verschiedene Formen der Datendarstellung. Diebreite Formsieht wie folgt aus:
subject time age weight height
1 John Smith 1 33 90 1.87
2 Mary Smith 1 NA 55 1.54
Derlange Formsieht wie folgt aus:
subject variable value
1 John Smith time 1.00
2 Mary Smith time 1.00
3 John Smith age 33.00
4 Mary Smith age NA
5 John Smith weight 90.00
6 Mary Smith weight 55.00
7 John Smith height 1.87
8 Mary Smith height 1.54
Quelle des Beispiels: Hadley WickhamsPapier. Beachten Sie jedoch, dass ich Marys Gewicht auf 55 geändert habe, vorher war es NA.
Ist es möglich, eine Textdatei im Langformat einzulesen und beispielsweise die Körpergröße gegen das Gewicht aufzuzeichnen?
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
% the following code doesn't work, but communicates the idea
% of what I want to work
\addplot [x variable=height,y variable=weight] {input.txt};
\end{axis}
\end{tikzpicture}
\end{document}
Der Grund, warum ich diese Frage stelle, ist, dass ich die Ausgabe eines Computersimulationsprogramms darstellen möchte, das ich geschrieben habe, und es ist einfacher, es in Langform auszugeben als in Breitform. Derzeit verwende ich ein R
Skript convert.R
, um die Textdatei in.txt
in Langform einzulesen und sie in eine Textdatei out.txt
in Breitform umzuwandeln, waspgfplotslesen kann. Es wäre praktischer, wenn pgfplots es irgendwie in.txt
direkt lesen und verarbeiten könnte, ohne dass ich es manuell ausführen müsste convert.R
.
Antwort1
[aus meinem Kommentar konvertiert]:
pgfplotstable
kommt ohne Unterstützung für die "lange Form". Wenn Sie ein Konvertierungsskript wünschen, das unabhängig von R ist, können Sie ein TeX-Skript (basierend auf pgfplotstable
grundlegender TeX-Programmierung) oder vielleicht ein LUA-Skript schreiben. Oder Sie rufen Ihr R
Skript per Shell-Escape oder über\addplot shell