Cum fac un tabel folosind \begin{table*} în LaTeX?

Tabelul I Încerc să creez este ușor complicat și ar trebui să arate astfel:

Introduceți descrierea imaginii aici

Ne pare rău pentru liniile strâmbe ale imaginii.

Până acum, am reușit să fac ceva simplu:

\begin{table*}[t] \centering \begin{tabular}{ *1c | *3c | *3c | *2c | } & & & & & & & & & & & & \\ % Keep adding as many numbers of rows, etc. \end{tabular} \end{table} 

Cu acest cod, am următoarele coloane – Nume, Text 1, Text 2, Text 3, Text 4, Text 5, Text 6, Text 7 și Text 8. Și pot adăuga câte rânduri vreau peste masă.

Nu am paturile de categoria 1, categoria 2 și categoria 3 în partea stângă și în partea superioară a imaginii.

Comentarii

Răspuns

Iată un punct de plecare . Spațiul poate și trebuie ajustat, dar acest lucru are sens numai după ce ați completat tabelul.

introduceți descrierea imaginii aici

\documentclass{article} \usepackage{rotating} \newcommand\sw[1]{\begin{sideways}#1\end{sideways}} \usepackage{multirow} \begin{document} \begin{tabular}{r|l|*8{c|}} \multicolumn{2}{c|}{} & \multicolumn{3}{c|}{Category 1} & \multicolumn{3}{c|}{Category 2} & \multicolumn{2}{c|}{Category 3} \\\cline{3-10} & Name & \sw{Text1} & \sw{Text2} & \sw{Text3} & \sw{Text4} & \sw{Text5} & \sw{Text6} & \sw{Text7} & \sw{Text8} \\\hline \multirow{4}{*}{\sw{\small Category 1}} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\hline \multirow{4}{*}{\sw{\small Category 2}} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\hline \end{tabular} \end{document} 

Editați: Cum se mărește numărul de coloane din categoria 3 de la 2 la 6, după cum s-a întrebat în comentarii:

  • Schimbați linia care începe tabelul la

    \begin{tabular}{r|l|*{12}{c|}} 
  • Schimbați \multicolumn pentru titlu la

    \multicolumn{6}{c|}{Category 3} 
  • Schimbați comenzile \cline în \cline{3-14} și \cline{2-14}, respectiv.

  • Trebuie să adăugați coloane în toate rândurile, chiar dacă acestea rămân goale, pentru a avea linii verticale. Aceasta înseamnă adăugarea

     & \sw{Text9} & \sw{Text10} & \sw{Text11} & \sw{Text12} 

pentru titlurile coloanei și extinderea celorlalte linii la

 & & & & & & & & & & & & & 

Comentarii

  • Încerc încă să înțeleg acest lucru. Ați putea da, vă rog, un sfat despre cum să creșteți numărul de coloane de la 2 la 6 în categoria 3 (adică am – Text 7,8,9,10,11,12) De asemenea, cum ajustez spațiul? /
  • Consultați modificarea răspunsului meu. Cu siguranță ar trebui să citiți un tutorial despre cum funcționează tabelele în LaTeX, altfel trebuie să întrebați cu fiecare modificare pe care doriți să o faceți. În ceea ce privește spațiul, amânați-l până când ați terminat cu masa; apoi întreabă din nou dacă nu îți place ‘ ceva special.
  • Deci am o singură problemă de spațiere. Cum pot face asta bine? Arată așa – drive.google.com/open?id=0B6unL1yNveR6eGlNUXZjaUdNVzA Da, am parcurs documentația și voi lucra pe tabele.
  • Practic, textul din categoria 1 și categoria 2 se ciocnesc în partea stângă a tabelului, iar cea de-a șasea coloană este puțin mai largă în mod implicit.
  • Mi-am dat seama. Nu foloseam numărul corect în opțiunea cu mai multe rânduri, dar a șasea coloană este încă mai largă.

Răspuns

S-ar putea să preferați să utilizați tabele de cărți.

Rezultatul următorului cod

\documentclass{standalone} \usepackage{booktabs} \usepackage{rotating} \newcommand\sw[1]{\small\begin{sideways}#1 \end{sideways}} \usepackage{multirow} \begin{document} \def\arraystretch{1.25} \begin{tabular}{rl*8{c}} \toprule \multicolumn{2}{c}{} & \multicolumn{3}{c}{Category 1} & \multicolumn{3}{c}{Category 2} & \multicolumn{2}{c}{Category 3} \\ & Name & \sw{Text1} & \sw{Text2} & \sw{Text3} & \sw{Text4} & \sw{Text5} & \sw{Text6} & \sw{Text7} & \sw{Text8} \\ \midrule \multirow{4}{*}{\sw{Category 1}} & a & A & & & & & & & \\ & b & B & & & & & & & \\ & c & C & & & & & & & \\ & d & D & & & & & & & \\ \multirow{4}{*}{\sw{Category 2}} & a & A & & & & & & & \\ & b & B & & & & & & & \\ & c & C & & & & & & & \\ & d & D & & & & & & & \\ \bottomrule \end{tabular} \end{document} 

Răspuns

Puteți utiliza \rotatebox{angle}{text} pentru a roti textul (necesită pachetul rotating ).

Puteți utiliza \multicolumn{num_cols}{alignment}{contents} pentru a crea celule care se întind pe mai multe coloane.

Puteți utiliza \cline{from-to} pentru reguli orizontale care nu acoperă toate coloanele.

Puteți utiliza \multirow{num_rows}{width}{contents} pentru a crea celule care se întind pe mai multe rânduri (necesită pachetul multirow ) .

Argumentul tabelului *{11}{c|} este o comandă rapidă de unsprezece ori c|, permisă de array pachet .

\documentclass{article} \usepackage{array} \usepackage{rotating}% https://en.wikibooks.org/wiki/LaTeX/Rotations \usepackage{multirow}% https://tex.stackexchange.com/a/73285/120953 \newcommand{\cat}[1]{#1} \newcommand{\thead}[1]{#1} \newcommand{\catver}[1]{\rotatebox{90}{\cat{#1}}} \newcommand{\theadver}[1]{\rotatebox{90}{\thead{#1}\hspace{.7em}}} \begin{document} \begin{tabular}{*{11}{c|}} \multicolumn{2}{l|}{} & \multicolumn{3}{l|}{\cat{Category~1}} & \multicolumn{3}{l|}{\cat{Category~2}} & \multicolumn{3}{l|}{\cat{Category~3}} % https://tex.stackexchange.com/a/8555/120953 \\\cline{3-11} & \thead{Name} & \theadver{Text~1} & \theadver{Text~2} & \theadver{Text~3} & \theadver{Text~4} & \theadver{Text~5} & \theadver{Text~6} & \theadver{Text~7} & \theadver{Text~8} & \theadver{Text~9} \\\hline \multirow{5}{*}{\catver{Category~1}} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\hline \multirow{5}{*}{\catver{Category~2}} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\hline \multirow{5}{*}{\catver{Category~3}} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\hline \end{tabular} \end{document} 

Mai mult fi interesat de această întrebare privind centrarea verticală a conținutului unei celule cu mai multe rânduri.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *