von lunen » Do 5. Sep 2019, 14:16
Hallo,
ich habe folgenden Wunsch: ich hätte gern, dass die Zweite Zeile meiner csv Datei ebenfalls als Header eingelesen wird. Wenn ich versuche after first line als Option zu verwenden, wird die Eingabe nicht akzeptiert und es Dokument kompiliert nicht mehr.
\documentclass[ngerman]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage[layout=a4paper,
includeheadfoot,
bottom=2cm]{geometry}
\usepackage{csvsimple}
\usepackage{chemmacros}
\chemsetup{modules=all}
\sisetup{%
output-decimal-marker = {.},
detect-weight, % Schrifttyp übernehmen
detect-family, %Schriftart des Umgebungstextes übernehmen (mit/ohne Serifen)
mode=text,
% separate-uncertainty
}
\usepackage{upgreek}
\usepackage{chemgreek}
\begin{filecontents*}{Succinat.csv}
pH soll,V(sa),V(HClO4/ NaOH),pH ist,m(NaClO4),pH nach,V(act) (4),V(NaOH),pH final
,mL,uL,,mg,,uL,uL,
1,10,95 (1) / -,1.08,92.9,1.08,2.5,0,1.1
2,10,9.5 (1) / - ,2.19,199.2,1.97,2.5,0,1.99
3,10,79.9 (2) / - ,3.37,212.1,3.08,2.5,0,3
4,10,- / -,3.95,211.3,3.49,2.5,0,3.45
5,10,- / 90 (3),5.07,209.6,4.43,5,2,4.44
6,10,- / 170 (3),6.15,208.6,5.55,5,6,5.57
\end{filecontents*}
\begin{document}
\begin{table}[h]
\caption{So sieht die Tabelle bisher aus}
\small\csvautobooktabular{Succinat.csv}
\end{table}
\bigskip
\begin{table}[hb]
\centering\small
\caption{So sollte es eigendlich aussehen}
\begin{tabularx}{17cm}{*2Xp{2.8cm}*6X}
\toprule
pH soll & v(sa)& V(HClO4/NaOH)& pH ist & m(NaClO4)& pH nach & V(act) & V(NaOH)& pH final \\
& mL & uL&& mg&&uL&uL&\\%
\midrule
1 & 10 & 95(1) & 1.08 & 92.9 & 1.08 & 2.5 & 0 & 1.10\\%
2 & 10 & 9.5(1) & 2.19 & 199.2 & 1.97 & 2.5 & 0 & 1.99\\%
\vdots\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
Ich weiss, dass es durchaus mächtigere Pakete als
csvsimple gibt, jedoch liegt der Charme darin, dass ich mit sehr wenig Code die Tabelle erstellen kann. In Zukunft werden das noch mehr solcher Tabellen in gleicher Art, da möchte ich nur ungern für jede Tabelle mehrere Zeilen Code jedes Mal verwenden.
EDIT: Ich bin auch offen für Alternativvorschläge falls es mit
csvsimple nicht geht. Bei meiner Recherche mit
pgfplotstable bin ich zwar auf brauchbare Lösungen gekommen, jedoch habe ich nicht herauslesen können, ob man all die Spezifikationen für die Tabelle auch global definieren kann und im Dokument selbst nur noch den Aufruf dafür machen kann.
Vielen Dank
Lunen
Hallo,
ich habe folgenden Wunsch: ich hätte gern, dass die Zweite Zeile meiner csv Datei ebenfalls als Header eingelesen wird. Wenn ich versuche after first line als Option zu verwenden, wird die Eingabe nicht akzeptiert und es Dokument kompiliert nicht mehr.
[code]
\documentclass[ngerman]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage[layout=a4paper,
includeheadfoot,
bottom=2cm]{geometry}
\usepackage{csvsimple}
\usepackage{chemmacros}
\chemsetup{modules=all}
\sisetup{%
output-decimal-marker = {.},
detect-weight, % Schrifttyp übernehmen
detect-family, %Schriftart des Umgebungstextes übernehmen (mit/ohne Serifen)
mode=text,
% separate-uncertainty
}
\usepackage{upgreek}
\usepackage{chemgreek}
\begin{filecontents*}{Succinat.csv}
pH soll,V(sa),V(HClO4/ NaOH),pH ist,m(NaClO4),pH nach,V(act) (4),V(NaOH),pH final
,mL,uL,,mg,,uL,uL,
1,10,95 (1) / -,1.08,92.9,1.08,2.5,0,1.1
2,10,9.5 (1) / - ,2.19,199.2,1.97,2.5,0,1.99
3,10,79.9 (2) / - ,3.37,212.1,3.08,2.5,0,3
4,10,- / -,3.95,211.3,3.49,2.5,0,3.45
5,10,- / 90 (3),5.07,209.6,4.43,5,2,4.44
6,10,- / 170 (3),6.15,208.6,5.55,5,6,5.57
\end{filecontents*}
\begin{document}
\begin{table}[h]
\caption{So sieht die Tabelle bisher aus}
\small\csvautobooktabular{Succinat.csv}
\end{table}
\bigskip
\begin{table}[hb]
\centering\small
\caption{So sollte es eigendlich aussehen}
\begin{tabularx}{17cm}{*2Xp{2.8cm}*6X}
\toprule
pH soll & v(sa)& V(HClO4/NaOH)& pH ist & m(NaClO4)& pH nach & V(act) & V(NaOH)& pH final \\
& mL & uL&& mg&&uL&uL&\\%
\midrule
1 & 10 & 95(1) & 1.08 & 92.9 & 1.08 & 2.5 & 0 & 1.10\\%
2 & 10 & 9.5(1) & 2.19 & 199.2 & 1.97 & 2.5 & 0 & 1.99\\%
\vdots\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
[/code]
Ich weiss, dass es durchaus mächtigere Pakete als [p]csvsimple[/p] gibt, jedoch liegt der Charme darin, dass ich mit sehr wenig Code die Tabelle erstellen kann. In Zukunft werden das noch mehr solcher Tabellen in gleicher Art, da möchte ich nur ungern für jede Tabelle mehrere Zeilen Code jedes Mal verwenden.
EDIT: Ich bin auch offen für Alternativvorschläge falls es mit [p]csvsimple[/p] nicht geht. Bei meiner Recherche mit [p]pgfplotstable[/p] bin ich zwar auf brauchbare Lösungen gekommen, jedoch habe ich nicht herauslesen können, ob man all die Spezifikationen für die Tabelle auch global definieren kann und im Dokument selbst nur noch den Aufruf dafür machen kann.
Vielen Dank
Lunen