变体表

变体表

我已经安装了用于制作函数符号和变量表的软件包tkz-tab。符号没问题,但是当我尝试制作变量表时,例如像这样:

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tkz-tab} %loads tikz

\begin{document}
\begin{tikzpicture}
   \tkzTabInit{$x$ / 1 , $f(x)$ / 2}{$-\infty$, $-5$, $-3$, $2$, $+\infty$}
   \tkzTabVar{-/ $-\infty$, +C/ $0$, +H/ $0$, D-/ $-10$, +/ $+\infty$}
\end{tikzpicture}
\end{document}

它写道:

包 pgf 错误:没有已知的名为 F11 的形状。有关详细信息,请参阅 pgf 包。

我应该怎么办?

答案1

您有解决方案...您的问题出现时带有babel和选项czech。您有三个解决方案。最好的\usetikzlibrary{babel}是 或您可以避免使用babel,最后另一个解决方案是lualatex使用polyglossia

在下面的代码中,我使用了“help”选项向您显示我的包创建的所有节点。这允许您轻松自定义表格。

% !TEX TS-program = lualatex
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{polyglossia}
\setmainlanguage{czech}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tkz-tab}
\begin{document}

\begin{tikzpicture}
   \tkzTabInit[help]{$x$ / 1 , $f(x)$ / 2}{$-\infty$, $-5$, $-3$, $2$, $+\infty$}
   \tkzTabVar{-/ $-\infty$, +C/ $0$, +H/ $0$, D-/ $-10$, +/ $+\infty$}
\end{tikzpicture}
\end{document}

在此处输入图片描述

你可以喜欢黑色温和使用 xscaleyscale

\begin{tikzpicture}[yscale=.5,xscale=.8]
\tkzTabInit{$x$ / 1 ,$f(x)$ / 2}{$-\infty$, $-5$, $-3$, $2$, $+\infty$}
\tkzTabVar{-/ $-\infty$, +C/ $0$, +H/ $0$, D-/ $-10$, +/ $+\infty$}
\end{tikzpicture}

在此处输入图片描述

您还可以添加样式,例如TikZ因为它在Tikz后面tkz-tab

\begin{tikzpicture}[yscale=.5,xscale=.8]
  \tikzset{h style/.append style = {%
 pattern=north east lines,pattern color=purple}}
\tkzTabInit{$x$ / 1 ,$f(x)$ / 2}{$-\infty$, $-5$, $-3$, $2$, $+\infty$}
\tkzTabVar{-/ $-\infty$, +C/ $0$, +H/ $0$, D-/ $-10$, +/ $+\infty$}
\end{tikzpicture}

在此处输入图片描述

答案2

新答案

使用包中的宏-禁用字符简写可以使其正常工作。\shorthandoffbabel

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tkz-tab} %loads tikz

\begin{document}
\shorthandoff{-}
\begin{tikzpicture}
   \tkzTabInit{$x$ / 1 , $f(x)$ / 2}{$-\infty$, $-5$, $-3$, $2$, $+\infty$}
   \tkzTabVar{-/ $-\infty$, +C/ $0$, +H/ $0$, D-/ $-10$, +/ $+\infty$}
\end{tikzpicture}
\shorthandon{-}
\end{document}

旧答案

它通过添加 tikz 的 babel 库来工作:\usetikzlibrary{babel}

截屏

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tkz-tab}
\usetikzlibrary{babel}
\begin{document}
\begin{tikzpicture}
   \tkzTabInit{$x$ / 1 , $f(x)$ / 2}{$-\infty$, $-5$, $-3$, $2$, $+\infty$}
   \tkzTabVar{-/ $-\infty$, +C/ $0$, +H/ $0$, D-/ $-10$, +/ $+\infty$}
\end{tikzpicture}
\end{document}

答案3

如果有人喜欢普通的 TikZ。我稍微调整了节点0和的位置。根据需要-10使用xscale和。yscale

在此处输入图片描述

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}[yscale=.8,xscale=1.75]
\begin{scope}[shift={(-.5,.5)}]
\fill[pattern=north east lines,pattern color=violet] (3.5,-1) rectangle +(1,-3);
\draw (0,0) rectangle +(6,-4) (0,-1)--+(0:6) (1,0)--+(-90:4);
\draw[gray] (2.5,-1)--+(-90:3) (3.5,-1)--+(-90:3) (4.5,-1)--+(-90:3);
\end{scope}
\path
(0,0)    node{$x$}          % <<< line 1
++(0:1)  node{$-\infty$}
++(0:1)  node{$-5$}
++(0:1)  node{$-3$}
++(0:1)  node{$2$}
++(0:1)  node{$+\infty$};
\path[nodes={fill=white,inner sep=2pt}]
(0,-2)   node{$f(x)$}          % <<< line 2
++(0:1)  +(-90:1) node (A) {$-\infty$}
++(0:1)  +(90:.5) node (B) {$0$}
++(0:1)  +(90:.5) node (C) {$0$}
++(0:1)  +(-90:.5) node (D) {$-10$}
++(0:1)  +(90:1) node (E) {$+\infty$};
\draw[-stealth,blue] (A)--(B);
\draw[-stealth,blue] (B)--(C);
\draw[-stealth,blue] (D)--(E);
\end{tikzpicture}
\end{document}

相关内容