Πίνακες

Από mechpedia

Μετάβαση σε: πλοήγηση, αναζήτηση

Πίνακας περιεχομένων

Γενικά

Η δημιουργία επίσημων πινάκων δεν είναι εύκολη. Κατευθυντήριες γραμμές σχετικά με τις αρχές που διέπουν τη δημιουργία τους μπορούν να βρεθούν ΕΔΩ και ΕΔΩ.

Για τη δημιουργία της βασικής τους δομής, συχνά είναι πιο εύκολο να χρησιμοποιηθεί κάποιου τύπου λογιστικό φύλλο (excel ή open-office) από τα οποία να γίνει export ο πίνακας σε κώδικα TeX.

Όσον αφορά το excel, οι επιλογές είναι:

Όσον αφορά τα Open/Libre Office οι αντίστοιχες επιλογές είναι:

Εναλλακτικά κάποια άλλα προγράμματα λογιστικών φύλλων όπως το gnumeric μπορούν να κάνουν απευθείας export σε latex κώδικα. Πληροφορίες ΕΔΩ

Πακέτα

Υπάρχουν πολλά πακέτα για πίνακες. To σημαντικότερο όλων, ίσως είναι το booktabs και το tabularx τα οποία επεκτείνουν το περιβάλλον tabular.

   \begin{tabularx}{\linewidth}{X}
   ...
   \end{tabularx}

Νote Πλέον υπάρχει και το tabu το οποίο όλα δείχνουν ότι θα αντικαταστήσει όλα τα υπόλοιπα πακέτα.

Κατακόρυφες γραμμές

They are evil!!! Don't use them.

Οριζόντιες γραμμές

Το πακέτο booktabs, ορίζει τις ακόλουθες νέες εντολές

\toprule
\midrule
\bottomrule

Για οριζόντιες γραμμές που δεν εκτείνονται σε όλο το πλάτος της γραμμής ορίζεται η εντολή

\cmidrule(rl){i-j}

όπου i-j είναι ο αριθμός της πρώτης στήλης και της τελευταίας στήλης αντίστοιχα.

Στοίχηση σε δεκαδικά ψηφία

Ίσως η καλύτερη επιλογή είναι η χρήση του πακέτου siunitx του Joseph Wright το οποίο ορίζει ένα νέο alignment specifier, το S.

Συνενώσεις κελιών

Οριζόντια συνένωση κελιών

Δεν απαιτεί κάποιο πρόσθετο πακέτο. Χρησιμοποιείται η εντολή

\multicolumn{number_of_columns}{alignment}{text}

Το alignment μπορεί να ειναι r/l,c

Κατακόρυφη συνένωση κελιών

Απαιτεί το πακέτο multirow που ορίζει την ομώνυμη εντολή με τη σύνταξη

\multirow{number_of_rows}{alignment}{text}

Το alignment μπορεί να ειναι r/l,c,* όπου * σημαίνει best fit.

Ταυτόχρονη συνένωση οριζοντίων και καθέτων κελιών

Χρησιμοποιείται το \multirow μέσα σε \multicolumn. Το ανάποδο δε δουλεύει!

\multicolumn{2}{|c|}{\multirow{2}{*}{combined cells}}

Πίνακες που εκτείνονται σε πολλές σελίδες

Αυτό μπορεί να επιτευχθεί μέσω του πακέτου longtable. To πακέτο αυτό ορίζει ορισμένες νέες εντολές, οι οποίες μπορούν να χρησιμοποιηθούν για να στοιχειοθετηθεί το header και το footer του πίνακα στην πρώτη σελίδα, στην τελευταία, καθώς και σε όλες τις ενδιάμεσες.

\endfirsthead  % Specifies rows to appear at the top the first page
\endhead       % Specifies rows to appear at the top of every page.
\endfoot       % Specifies rows to appear at the bottom of every page.
\endlastfoot   % Specifies rows to appear at the bottom of the last page

Συνεργάζεται χωρίς προβλήματα με το πακέτο tabu

Ένα πλήρες παράδειγμα μπορεί να βρεθεί ΕΔΩ

Υποσημειώσεις πίνακα

Μπορεί να χρησιμοποιείται το πακέτο threeparttables

Παράδειγμα

\documentclass{article}

\usepackage{booktabs}
\usepackage{multirow}
\usepackage{threeparttable}
\usepackage{siunitx}

\sisetup{table-align-text-post = false,table-format = 1.2}
\usepackage{etoolbox}
\robustify\tnote

\begin{document}
   \begin{table}[tpb]
       \centering
       \begin{threeparttable}[b]
           \begin{tabular}{lcSSSSl}
           \toprule
           &&\multicolumn{4}{c}{Pull--out}\\
           \cmidrule{3-6}
           &&\multicolumn{2}{c}{Good Conditions} & \multicolumn{2}{c}{Other Conditions}\\
           \cmidrule(r){3-4} \cmidrule(r){5-6}
           && \multicolumn{1}{c}{\emph{MC 1990}} &  \multicolumn{1}{c}{\emph{MC 2010}} &  \multicolumn{1}{c}{\emph{MC 1990}} & \multicolumn{1}{c}{\emph{MC 2010}}\\
           \cmidrule(r){3-3} \cmidrule(r){4-4} \cmidrule(r){5-5} \cmidrule(r){6-6}
           $t_{max}$ & [\si{MPa}] & 2.50          & 2.50          & 1.25          & 1.25          & $\times \sqrt{f_{ck}}$\\
           $t_f$     & [\si{MPa}] & 0.40\tnote{1} & 0.40\tnote{1} & 0.40\tnote{1} & 0.40\tnote{1} & $\times t_{max}$\\
           $s_1$     & [\si{mm}]  & 1.0           & 1.0           & 1.0           & 1.8           & \\
           $s_2$     & [\si{mm}]  & 3.0           & 2.0           & 3.0           & 3.6           & \\
           $a$       & [-]        & 0.40          & 0.40          & 0.40          & 0.40          & \\
           \bottomrule
           \end{tabular}
           \begin{tablenotes}\footnotesize
               \item [1] From data analysis.
           \end{tablenotes}
       \end{threeparttable}
   \end{table}
\end{document}
Εμφανίσεις
Προσωπικά εργαλεία
Google AdSense