我正在使用 TikZ 開發 LaTeX 表,我面臨兩個挑戰。首先,我希望表頭中的內容居中。其次,我也需要第三列的內容居中,類似第二張圖片中的外觀。有人可以提供實現這兩個格式要求的程式碼片段或指導嗎?
這是我的嘗試
\documentclass{article}
\usepackage{graphicx} % Required for inserting images
\usepackage{amsmath, amssymb} % For mathematical symbols and fonts
\usepackage[showframe]{geometry}
\usepackage{tikz}
\usepackage{rotating} % For rotating tables
\begin{document}
\begin{sidewaystable}
\centering
\begin{tabular}{|p{4cm}|p{2.5cm}|p{5.2cm}|p{5.2cm}|}
\hline
La fonction & Domaine de définition & Tableau des variations & La courbe\\
\hline
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
La fonction trinome du second degré (parabole) $x\to ax^{2}+bx+c$ $(a\neq 0)$ & $D_{f}=\mathbb{R}$ &
Si $a>0$
\begin{center}
\begin{tikzpicture}[scale=0.5]
% Styles
\tikzstyle{cadre}=[thin]
\tikzstyle{fleche}=[->,>=latex,thin]
\tikzstyle{nondefini}=[lightgray]
% Dimensions Modifiables
\def\Lrg{1.5}
\def\HtX{1}
\def\HtY{0.5}
% Dimensions Calculées
\def\lignex{-0.5*\HtX}
\def\lignef{-1.5*\HtX}
\def\separateur{-0.5*\Lrg}
% Largeur du tableau
\def\gauche{-1.5*\Lrg}
\def\droite{4.5*\Lrg}
% Hauteur du tableau
\def\haut{0.5*\HtX}
\def\bas{-1.5*\HtX-2*\HtY}
% Ligne de l'abscisse : x
\node at (-1*\Lrg,0) {$x$};
\node at (0*\Lrg,0) {$-\infty$};
\node at (2*\Lrg,0) {$-\frac{b}{2a}$};
\node at (4*\Lrg,0) {$+\infty$};
% Ligne de la fonction : f(x)
\node at (-1*\Lrg,{-1*\HtX+(-1)*\HtY}) {$f(x)$};
\node (f1) at (0*\Lrg,{-1*\HtX+(0)*\HtY}) {$$};
\node (f2) at (2*\Lrg,{-1*\HtX+(-2)*\HtY}) {$f\left(-\frac{b}{2a}\right)$};
\node (f3) at (4*\Lrg,{-1*\HtX+(0)*\HtY}) {$$};
% Flèches
\draw[fleche] (f1) -- (f2);
\draw[fleche] (f2) -- (f3);
% Encadrement
\draw[cadre] (\separateur,\haut) -- (\separateur,\bas);
\draw[cadre] (\gauche,\haut) rectangle (\droite,\bas);
\draw[cadre] (\gauche,\lignex) -- (\droite,\lignex);
\end{tikzpicture}
\end{center}
%:-+-+-+-+- Fin
Si $a<0$
\begin{center}
\begin{tikzpicture}[scale=0.5]
% Styles
\tikzstyle{cadre}=[thin]
\tikzstyle{fleche}=[->,>=latex,thin]
\tikzstyle{nondefini}=[lightgray]
% Dimensions Modifiables
\def\Lrg{1.5}
\def\HtX{1}
\def\HtY{0.5}
% Dimensions Calculées
\def\lignex{-0.5*\HtX}
\def\lignef{-1.5*\HtX}
\def\separateur{-0.5*\Lrg}
% Largeur du tableau
\def\gauche{-1.5*\Lrg}
\def\droite{4.5*\Lrg}
% Hauteur du tableau
\def\haut{0.5*\HtX}
\def\bas{-1.5*\HtX-2*\HtY}
% Ligne de l'abscisse : x
\node at (-1*\Lrg,0) {$x$};
\node at (0*\Lrg,0) {$-\infty$};
\node at (2*\Lrg,0) {$-\frac{b}{2a}$};
\node at (4*\Lrg,0) {$+\infty$};
% Ligne de la fonction : f(x)
\node at (-1*\Lrg,{-1*\HtX+(-1)*\HtY}) {$f(x)$};
\node (f1) at (0*\Lrg,{-1*\HtX+(-2)*\HtY}) {$$};
\node (f2) at (2*\Lrg,{-1*\HtX+(0)*\HtY}) {$f\left(-\frac{b}{2a}\right)$};
\node (f3) at (4*\Lrg,{-1*\HtX+(-2)*\HtY}) {$$};
% Flèches
\draw[fleche] (f1) -- (f2);
\draw[fleche] (f2) -- (f3);
% Encadrement
\draw[cadre] (\separateur,\haut) -- (\separateur,\bas);
\draw[cadre] (\gauche,\haut) rectangle (\droite,\bas);
\draw[cadre] (\gauche,\lignex) -- (\droite,\lignex);
\end{tikzpicture}
\end{center}
%:-+-+-+-+- Fin
& Si $a>0$
\begin{center}
\begin{tikzpicture}[>=latex,scale=0.22]
% Axes
\draw[->] (-9,0) -- (9,0) node[right] {$x$};
\draw[->] (0,-9) -- (0,9) node[above] {$y$};
% Grid
\foreach \x in {-9,...,9}
\draw[gray,dashed] (\x,-9) -- (\x,9);
\foreach \y in {-9,...,9}
\draw[gray,dashed] (-9,\y) -- (9,\y);
\end{tikzpicture}
\end{center}
Si $a<0$
\begin{center}
\begin{tikzpicture}[>=latex,scale=0.22]
% Axes
\draw[->] (-9,0) -- (9,0) node[right] {$x$};
\draw[->] (0,-9) -- (0,9) node[above] {$y$};
% Grid
\foreach \x in {-9,...,9}
\draw[gray,dashed] (\x,-9) -- (\x,9);
\foreach \y in {-9,...,9}
\draw[gray,dashed] (-9,\y) -- (9,\y);
\end{tikzpicture}
\end{center}
\\ \hline
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
La fonction Homographique ${x\to \dfrac{ax+b}{cx+d}}$ & ${D_{f}=\mathbb{R}-\left\{-\frac{d}{c}\right\}}$ & On pose ${\Delta=\begin{vmatrix}
a & b\\
c & d
\end{vmatrix}=ad-bc}$ & Row 2, Cell 4 \\
\hline
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Row 3, Cell 1 & Row 3, Cell 2 & Row 3, Cell 3 & Row 3, Cell 4 \\
\hline
\end{tabular}
\caption{A Corrected Table}
\label{tab:corrected}
\end{sidewaystable}
\end{document}
答案1
帶tabularray
包
- 我們可以將
a>0
和a<0
放在兩個不同的表格行上,以便它們對齊。有了hline{1,2,4-Z} = {0.4pt,solid}
,我們就不會畫那條線了 - 主要困難是將變化表與圖表垂直居中。我們可以把這個圖放在一個盒子裡來測量它的高度
\hgraph
,我們可以\parbox
透過指示這個高度來使變化表居中\parbox[c][\hgraph]{\linewidth}
\tikstsyle
已折舊,我替換為tikzset
備註:第一列的寬度為 4 厘米,我們有一個Underdull
,我將其修改為 3.8 厘米,我還添加了可能的連字以用於單形homogra\-phi\-que
第二列的寬度為 2.5 厘米,我們有一個Overfull
,我將其修改為2.6 cm 最後兩列以 X 表示,它們採用最大剩餘寬度。我冒昧地\to
改變\mapsto
了Homographique
homographique
程式碼
\documentclass[landscape]{article}
\usepackage{amsmath, amssymb} % For mathematical symbols and fonts
\usepackage[showframe]{geometry}
\usepackage{tikz}
%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tabularray}
\newlength{\hgraph}
\newsavebox{\mybox}
\savebox{\mybox}{%
\begin{tikzpicture}[>=latex,scale=0.22]
% Axes
\draw[->] (-9,0) -- (9,0) node[right] {$x$};
\draw[->] (0,-9) -- (0,9) node[above] {$y$};
% Grid
\foreach \x in {-9,...,9}
\draw[gray,dashed] (\x,-9) -- (\x,9);
\foreach \y in {-9,...,9}
\draw[gray,dashed] (-9,\y) -- (9,\y);
\end{tikzpicture}}
\settoheight{\hgraph}{\usebox{\mybox}}
%%%%%%%%%%%%%
\tikzset{
cadre/.style={thin},
fleche/.style={->,>=latex,thin},
nondefini/.style={lightgray}
}
% Dimensions Modifiables
\def\Lrg{1.5}
\def\HtX{1}
\def\HtY{0.5}
% Dimensions Calculées
\def\lignex{-0.5*\HtX}
\def\lignef{-1.5*\HtX}
\def\separateur{-0.5*\Lrg}
% Largeur du tableau
\def\gauche{-1.5*\Lrg}
\def\droite{4.5*\Lrg}
% Hauteur du tableau
\def\haut{0.5*\HtX}
\def\bas{-1.5*\HtX-2*\HtY}
\begin{document}
\noindent
\begin{tblr}{
% with wd=4cm,for the first we have underfull
% with wd=2.5cm,for the second we have underfull
colspec={Q[wd=3.8cm]Q[wd=2.6cm,c] *{2}{X}},
row{1}={c,m},
vlines= {0.4pt,solid},
hline{1,2,4-Z} = {0.4pt,solid},
}
La fonction& Domaine de définition & Tableau des variations& La courbe\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
La fonction trinome du second degré (parabole) $x\mapsto ax^{2}+bx+c$ $(a\neq 0)$ & $D_{f}=\mathbb{R}$
&Si $a>0$
\parbox[c][\hgraph]{\linewidth}{%
{\centering%
\begin{tikzpicture}[scale=0.5]
% Ligne de l'abscisse : x
\node at (-1*\Lrg,0) {$x$};
\node at (0*\Lrg,0) {$-\infty$};
\node at (2*\Lrg,0) {$-\frac{b}{2a}$};
\node at (4*\Lrg,0) {$+\infty$};
% Ligne de la fonction : f(x)
\node at (-1*\Lrg,{-1*\HtX+(-1)*\HtY}) {$f(x)$};
\node (f1) at (0*\Lrg,{-1*\HtX+(0)*\HtY}) {$$};
\node (f2) at (2*\Lrg,{-1*\HtX+(-2)*\HtY}) {$f\left(-\frac{b}{2a}\right)$};
\node (f3) at (4*\Lrg,{-1*\HtX+(0)*\HtY}) {$$};
% Flèches
\draw[fleche] (f1) -- (f2);
\draw[fleche] (f2) -- (f3);
% Encadrement
\draw[cadre] (\separateur,\haut) -- (\separateur,\bas);
\draw[cadre] (\gauche,\haut) rectangle (\droite,\bas);
\draw[cadre] (\gauche,\lignex) -- (\droite,\lignex);
\end{tikzpicture}\par}
}
%:-+-+-+-+- Fin
& Si $a>0$
{\centering \usebox{\mybox}\par} \\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
&& Si $a<0$
\parbox[c][\hgraph]{\linewidth}{\centering
\begin{tikzpicture}[scale=0.5]
% Ligne de l'abscisse : x
\node at (-1*\Lrg,0) {$x$};
\node at (0*\Lrg,0) {$-\infty$};
\node at (2*\Lrg,0) {$-\frac{b}{2a}$};
\node at (4*\Lrg,0) {$+\infty$};
% Ligne de la fonction : f(x)
\node at (-1*\Lrg,{-1*\HtX+(-1)*\HtY}) {$f(x)$};
\node (f1) at (0*\Lrg,{-1*\HtX+(-2)*\HtY}) {$$};
\node (f2) at (2*\Lrg,{-1*\HtX+(0)*\HtY}) {$f\left(-\frac{b}{2a}\right)$};
\node (f3) at (4*\Lrg,{-1*\HtX+(-2)*\HtY}) {$$};
% Flèches
\draw[fleche] (f1) -- (f2);
\draw[fleche] (f2) -- (f3);
% Encadrement
\draw[cadre] (\separateur,\haut) -- (\separateur,\bas);
\draw[cadre] (\gauche,\haut) rectangle (\droite,\bas);
\draw[cadre] (\gauche,\lignex) -- (\droite,\lignex);
\end{tikzpicture}\par}
& Si $a<0$
{\centering \usebox{\mybox}\par}
\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
La fonction Homogra\-phi\-que ${x\mapsto \dfrac{ax+b}{cx+d}}$ & ${D_{f}=\mathbb{R}-\left\{-\frac{d}{c}\right\}}$ & On pose ${\Delta=\begin{vmatrix}
a & b\\
c & d
\end{vmatrix}=ad-bc}$ & Row 2, Cell 4 \\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Row 3, Cell 1 & Row 3, Cell 2 & Row 3, Cell 3 & Row 3, Cell 4 \\
\end{tblr}
\end{document}