最新帖子
感谢 Black Mild 的代码,我几乎得到了我需要的一切。
以下是剩下要做的事情。 如何将图垂直居中于线段 [T21 T22] 的中间,其中 T21 和 T22 是两个节点? 我希望地块位于指示的框架内(无需绘制框架)。更确切地说,我希望地块的高度合适,宽度应与初始地块的比率保持一致。
这是更新后的代码。
\documentclass{article}
\usepackage{tkz-tab}
\newcommand\signline[3]{
\draw[blue]
(#1.east) +(0:.5) pic[right]{%
code = {
\draw[->] (0,0)--+(0:2);
\draw[blue] (0,.5)node[right=2mm]{$+$}
--
(2,-.5) node[left=2mm]{$-$};
\path (1,0) node[above,blue]{#3};
}
}
}
\begin{document}
\begin{tikzpicture}
\tkzTabInit[
espcl = 1.5,
% help % This shows TikZ names of nodes given by tkz-tab.
]{
$x$ /1,
Signe de\\ $-x+3$ /1.5,
Signe de\\ $f(x)$ /1.5,
Signe de\\ $x^2 + 3x - 4$ /1.5,
Signe du\\ produit /1.5
}{%
$-\infty$, $-4$, $1$, $3$, $+\infty$
}
\tkzTabLine { , + , t , + , t , + , z , - }
\tkzTabLine { , - , z , + , z , + , z , - }
\tkzTabLine { , + , z , - , z , + , t , + }
\tkzTabLine { , - , z , - , z , + , z , + }
\signline{T21}{T22}{$3$}
;
\end{tikzpicture}
\end{document}
初始帖子
在下面的代码中我想像下图一样装饰我的表格。
以下是我对第一个情节(带有线条的情节)的疑问。
- 如何使用 3 个节点定义特定的笛卡尔坐标系?在我的代码中,我将始终使用名为 T21、T22 的节点,...
\tkzTabInit
有一个选项可以查看构建的节点名称。 - 如何在另一个笛卡尔坐标系中使用 TikZ 图?
就我而言,我想构建几个标准图(用于线、抛物线)。然后我想将其中一个放在特定的笛卡尔坐标系中。
\documentclass{article}
\usepackage{tkz-tab}
\begin{document}
\begin{tikzpicture}
\tkzTabInit[
espcl=1.5,
%help % ---> This shows TikZ names given by tkz-tab to nodes.
]{
$x$ /1,
Signe de\\ $-x+3$ /1.5,
Signe de\\ $f(x)$ /1.5,
Signe de\\ $x^2 + 3x - 4$ /1.5,
Signe du\\ produit /1.5
}{%
$-\infty$, $-4$, $1$, $3$, $+\infty$
}
\tkzTabLine { , + , t , + , t , + , z , - }
\tkzTabLine { , - , z , + , z , + , z , - }
\tkzTabLine { , + , z , - , z , + , t , + }
\tkzTabLine { , - , z , - , z , + , z , + }
\draw[blue]
(T21) node[right=2mm]{UP};
\draw[blue]
(T22) node[right=2mm]{DOWN};
\end{tikzpicture}
\end{document}
答案1
我认为matrix
这更适合这种情况(在桌子上画一些东西)。我没有画虚线,因为没有必要!
\documentclass{article}
\usepackage{tikz,amsmath,amssymb,amsthm,lipsum}
\usetikzlibrary{matrix}
\begin{document}
\lipsum[1]
\begin{center}
\begin{tikzpicture}
\matrix (m) [matrix of nodes,draw,inner sep=0,
nodes in empty cells,
row sep=-\pgflinewidth,
column sep=-\pgflinewidth,
nodes={minimum height=10mm,minimum width=8mm,anchor=center},
row 1/.style={nodes={minimum height=6mm}},
column 1/.style={nodes={minimum width=2cm,text width=2.1cm,align=center}},
]{
$x$&$-\infty$&&$-4$&&$1$&&$3$&&$+\infty$\\
{Sign de\\$-x+3$}&&$+$&&$+$&&$+$&$0$&$-$&\\
{Sign de\\$f(x)$}&&$-$&$0$&$+$&$0$&$-$&&$-$&\\
{Sign de\\$x^2-3x+4$}&&$+$&$0$&$-$&$0$&$+$&&$+$&\\
{Sign de\\produit}&&$-$&$0$&$-$&$0$&$-$&$0$&$+$&\\
};
\foreach \i in {1,2,3,4}
\draw
(m-\i-1.south west)--(m-\i-10.south east);
\draw
(m-1-1.north east)--(m-5-1.south east);
\path
(m-4-10.east) +(0:.5) node[right,draw,blue]{Another plot}
(m-3-10.east) +(0:.5) node[right,blue]{Cf. q1}
(m-2-10.east) +(0:.5) pic[right]{code={
\draw[->] (0,0)--+(0:2);
\draw[blue] (0,-.5)node[right=2mm]{$-$}--
(2,.5) node[left=2mm]{$+$};
\path (1,0) node[above,blue]{$3$};
}}
;
\end{tikzpicture}
\end{center}
\lipsum[2]
\end{document}
答案2
感谢 Black Mild 的解决方案只需在网上搜索一下,我就能完成这项工作。下面是一段代码,可以完成我需要的工作,如下面的屏幕截图所示(API 不是用户友好的,但从我的角度来看,最难的部分已经完成了)。
\documentclass{article}
% Sources
% + https://tex.stackexchange.com/a/549546/6880
% + https://groups.google.com/forum/#!topic/fr.comp.text.tex/X6aIq-SZDFA
\usepackage{tkz-tab}
\usetikzlibrary{calc}
\newcommand\signline[3]{
\coordinate (M) at ($(#1)!.5!(#2)$);
\path
(M.east) +(.75,0) pic[right]{%
code = {
\draw[->] (0,0)--+(0:2);
\draw[blue] (0,.5)node[right=2mm]{$+$}
--
(2,-.5) node[left=2mm]{$-$};
% Root
\path (1,0) node[above,blue]{#3};
}
};
}
\newcommand\signparabola[4]{
\coordinate (M) at ($(#1)!.5!(#2)$);
\path
(M.east) +(.75,0) pic[right]{%
code = {
\draw[->] (0,0)--+(0:2.5);
\draw[blue] (0.25,-.6) parabola bend (1.25,.6) (2.25,-.6);
\path (1.25,0) node[above,blue]{$+$};
\path (.275,-.3) node[left,blue]{$-$};
\path (2.25,-.3) node[right,blue]{$-$};
% Roots
\path (.25,0) node[above,blue]{#3};
\path (2.125,0) node[above,blue]{#4};
}
};
}
\newcommand\comment[3]{
\coordinate (M) at ($(#1)!.5!(#2)$);
\path
(M.east) +(.75,0) node[right,blue]{#3}
;
}
\begin{document}
\begin{tikzpicture}
\tkzTabInit[
espcl = 1.5,
% help % This shows TikZ names of nodes given by tkz-tab.
]{
$x$ /1,
Signe de\\ $-x+3$ /1.5,
Signe de\\ $f(x)$ /1.5,
Signe de\\ $x^2 + 3x - 4$ /1.5,
Signe du\\ produit /1.5
}{%
$-\infty$, $-4$, $1$, $3$, $+\infty$
}
\tkzTabLine { , + , t , + , t , + , z , - }
\tkzTabLine { , - , z , + , z , + , z , - }
\tkzTabLine { , - , z , + , z , - , t , - }
\tkzTabLine { , + , z , + , z , - , z , - }
\signline{T21}{T22}{$3$}
\comment{T22}{T23}{Voir Q.1-a)}
\signparabola{T23}{T24}{$-4$}{$1$}
\end{tikzpicture}
\end{document}