
Ich verwende WinEdt 9.0, MikTex 2.9 auf Windows 7 Pro.
Ich erstelle einen PDF-Bericht im Standardformat und muss dieses Format einhalten (d. h. die Tabelle hat ein bestimmtes Format mit Farben und Schriftarten usw. usw.). Um es klarzustellen: Das Tabellenlayout ist komplex und vordefiniert. Ich muss nur die Datenpunkte hinzufügen.
Das Format erfordert, dass große Tabellen mit Float-Datenpunkten gefüllt werden, die in einer CSV-Datei auf meinem PC gespeichert sind. Es scheint mehrere Möglichkeiten zu geben, dies zu tun, aber ich bin mir nicht sicher, welche die einfachste ist. Idealerweise würde ich gerne in der Lage sein, myFile.txt „zu indizieren“, z. B. x= load(myFile.txt), val1 = x(3,17); usw.
Wie weise ich meinen Variablen val1, val2, val3, val4 Werte aus „myFile.txt“ zu?
mein MWE ist unten. Danke!
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{caption}
\usepackage{float}
\usepackage{xspace}
\usepackage{verbatim}
\usepackage{array}
\usepackage{multirow}
\usepackage{hhline}
\usepackage{ifthen}
%http://www.tug.org/texmf-dist/doc/latex/pgfplots/pgfplotstable.pdf
\newread\file
\openin\file=A:/myReports/latestResults/myFile.txt
\loop\unless\ifeof\file
\read\file to\fileline % Reads a line of the file into \fileline
% Do something with \fileline
\repeat
\closein\file
\begin{tabular}{|c|c|c|}
\hline
t1 & t2 & t3 \\
y1 & val1 & val4 \\
y2 & val2 & val3 \\
\hline
\end{tabular}
\end{document}
Antwort1
Eine einfache Möglichkeit ist die Verwendung von knitr
:
\documentclass[twocolumn]{article}
\usepackage{booktabs}
\parskip1em\parindent0pt
\begin{document}
The CSV file:
<<echo=F,comment=NA>>=
Val <- read.csv("values.csv",header=T)
val <- Val$Values ## just to simplify the \Sexpr
Val
@
The \LaTeX\ table:\par
\begin{tabular}{ccc}\toprule
t1 & t2 & t3 \\\midrule
y1 & \Sexpr{val[1]} & \Sexpr{val[4]} \\
y2 & \Sexpr{val[2]} & \Sexpr{val[3]} \\
\bottomrule
\end{tabular}
\end{document}