我想做一个函数分析,我想做一个表格,其中包括一阶和二阶导数以及表示函数单调性的曲线箭头,但我无法制作连接一阶导数和二阶导数单调性的曲线箭头。我能做的最好的就是
\documentclass[11pt]{article}
\usepackage{color}
\usepackage{tikz}
\usepackage{MnSymbol}
\usepackage{tikz,tkz-tab,amsmath}
\usetikzlibrary{arrows}
\begin{document}
\newcommand{\E}{\mathrm{e}}
\begin{tikzpicture}
\tikzset{arrow style/.style = {blue,->,> = latex',
shorten > = 6pt,
shorten < = 6pt}}
\tkzTabInit[espcl=2]{$x$ /1, $f'(x)$ /1.5, $f''(x)$ /2,$f(x)$/2.5}{$-\infty$, $0$ ,$1$ , $2$ , $+\infty$}%
\tkzTabLine{ ,+,z,- ,d,-,z,+}%
\tkzTabLine{ ,-,t ,- ,d,+,t ,+}%
\tkzTabVar%
{ -/ , +/ ,-D+/ / , -/ ,+/ / }%
\end{tikzpicture}
\end{document}
尽管我尝试处理这样的事情
谁能帮助我?
答案1
这可能有助于将弯曲的箭头放到位:
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{tikz,tkz-tab,amsmath}
\usetikzlibrary{arrows}
\begin{document}
\newcommand{\E}{\mathrm{e}}
\begin{tikzpicture}
\tikzset{arrow style/.style = {blue,->,> = latex',
shorten > = 6pt,
shorten < = 6pt}}
\tkzTabInit[espcl=2]{$x$ /1, $f'(x)$ /1.5, $f''(x)$ /2,$f(x)$/2.5}{$-\infty$, $0$ ,$1$ , $2$ , $+\infty$}%
\tkzTabLine{ ,+,z,- ,d,-,z,+}%
\tkzTabLine{ ,-,t ,- ,d,+,t ,+}%
% \tkzTabVar%
% { -/ , +/ ,-D+/ / , -/ ,+/ / }%
\pgfnodebox{i1}[virtual]{\pgfxy(2.5,-5)}{$+\infty$}{0pt}{0pt}
\pgfnodebox{n1}[virtual]{\pgfxy(4.5,-5.5)}{$11$}{0pt}{0pt}
\pgfnodebox{n2}[virtual]{\pgfxy(6.5,-6)}{$-5$}{0pt}{0pt}
\pgfnodebox{n3}[virtual]{\pgfxy(8.5,-6.5)}{$-16$}{0pt}{0pt}
\pgfnodebox{i2}[virtual]{\pgfxy(10.5,-5)}{$+\infty$}{0pt}{0pt}
\pgfsetendarrow{\pgfarrowtriangle{4pt}}
\pgfnodeconncurve{i1}{n1}{-65}{-180}{.5cm}{.5cm}
\pgfnodeconncurve{n1}{n2}{0}{110}{.5cm}{.5cm}
\pgfnodeconncurve{n2}{n3}{-80}{-180}{.5cm}{.5cm}
\pgfnodeconncurve{n3}{i2}{0}{-90}{1.5cm}{1cm}
\end{tikzpicture}
\end{document}
我确信有更有效的方法来产生相同类型的输出:
答案2
我修改我的答案以得到你想要的......
我的回答并不完整,因为我需要更多时间......
我的软件包对法国数学老师很有用。我们从来不会制作你想要的表格。下面我制作了“传统”表格...
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{tkz-tab,tkz-fct}
\usetikzlibrary{arrows}
\begin{document}
\noindent\begin{tikzpicture}[xscale=1]
\tkzTabInit[espcl=1.5]{$x$/1,$f’(x)$/2,$f’'(x)$/2,$f(x)$/4}
{$-\infty$,$0$,$2$,$3$,$+\infty$}%
\tkzTabLine{,-,0,-, ,-,0,+, }%
\tkzTabLine{,+,0,-,0,+, ,+, }%
\tkzTabVar{+/ $+\infty$ ,R/ ,R/ ,-/-16,+/ $+\infty$ } % french method
\end{tikzpicture}
\begin{tikzpicture}
\tkzInit[xmin=-1,xmax=4,xstep=1,
ymin=-16,ymax=16,ystep=8]
\tkzAxeXY
\tkzFct[color=red,samples=100,domain = -1:4]{\x**4-4*\x**3+11}
\end{tikzpicture}
\end{document}
使用法国方法,通常会放置一些中间值,如 11、-5 或 -16
如果您想要个性化结果,可以使用该help
选项。使用此选项,您可以获得
现在您已在图片中定义了所有节点。通过这些坐标,您可以放置您想要的东西。
现在您可以使用 N13、N14 等来放置节点并绘制一些曲线箭头。我明天可以发布完整的答案,但也许您可以找到解决方案……
最终的
现在我们知道了放置弯曲箭头所需的节点。我们可以像这样放置值
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tkz-tab}
\usetikzlibrary{arrows}
\begin{document}
\begin{tikzpicture}
\tkzTabInit[espcl=1.5]{$x$/1,$f’(x)$/2,$f’'(x)$/2,$f(x)$/4} {$-\infty$,$0$,$2$,$3$,$+\infty$}%
\tkzTabLine{,-,0,-, ,-,0,+, }%
\tkzTabLine{,+,0,-,0,+, ,+, }%
\node [below] at (N13){\scriptsize$+\infty$};
\node [below=1cm] at (N23){\scriptsize$11$};
\node [below=2cm] at (N33){\scriptsize$-5$};
\node [above] at (N44){\scriptsize$-16$};
\node [below] at (N53){\scriptsize$+\infty$};
\end{tikzpicture}
\end{document}
下一步是画箭头...这很容易,而且有几种可能性。我们可以给最后的节点命名,然后...
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{tkz-tab}
\usetikzlibrary{arrows}
\begin{document}
\begin{tikzpicture}
\tkzTabInit[espcl=2]{$x$/1,$f’(x)$/2,$f’'(x)$/2,$f(x)$/4} {$-\infty$,$0$,$2$,$3$,$+\infty$}
\tkzTabLine{,-,0,-, ,-,0,+, }
\tkzTabLine{,+,0,-,0,+, ,+, }
\node [below] (n1) at (N13){\scriptsize$+\infty$};
\node [below=1cm](n2) at (N23){\scriptsize$11$};
\node [below=2cm] (n3) at (N33){\scriptsize$-5$};
\node [above] (n4) at (N44){\scriptsize$-16$};
\node [below] (n5) at (N53){\scriptsize$+\infty$};
\draw[>->] (n1) to [out=-90,in=180] (n2);
\draw[>->] (n2) to [out=0,in=90] (n3);
\draw[>->] (n3) to [out=-90,in=180] (n4);
\draw[>->] (n4) to [out=0,in=-90] (n5);
\end{tikzpicture}
\end{document}
最后说明:我以前kz-fct
画过 2D 图,但你可以独立完成这一步。这和你的问题没有任何联系。你只能用 tikz 或好用的工具 PGFPlots 来绘制这条曲线。这里有很多人可以帮助你。tkz-fct
需要安装 gnuplot,有时并不容易。
答案3
这是使用表格内的 PSTricks 绘图的解决方案。(使用latex
--> dvips
--> ps2pdf
og进行编译xelatex
。)
\documentclass{article}
\usepackage[
tableposition = top,
labelformat = empty % Removes ``Table'' or ``Figure'' from caption.
]{caption}
\usepackage{pstricks}
\usepackage{booktabs}
% Increasing function.
\newcommand*\increase{
\raisebox{-1.2ex}{%
\begin{pspicture}(0.5,0.5)
\psline[linecolor = blue]{->}(0,0)(0.5,0.5)
\end{pspicture}%
}
}
% Decreasing function.
\newcommand*\decrease{
\raisebox{-1.2ex}{%
\begin{pspicture}(0.5,0.5)
\psline[linecolor = blue]{->}(0,0.5)(0.5,0)
\end{pspicture}%
}
}
\begin{document}
\begin{table}
\centering
\caption{Monotony of a function~$f$.}
\label{tbl:1}
\renewcommand\arraystretch{1.5}
\begin{tabular}{*{10}{c}}
\toprule
$x$ & $-\infty$ & & $0$ & & $1$ & & $2$ & & $+\infty$ \\
\midrule
$f'(x)$ & & $+$ & & $-$ & & $-$ & & $+$ & \\
$f''(x)$ & & $-$ & & $-$ & & $+$ & & $+$ & \\
$f(x)$ & & \increase & & \decrease & & \decrease & & \increase & \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
笔记:我知道这不是您完全想要的,但我喜欢这个解决方案,所以请将其视为我的建议。
答案4
这是软件包作者@AlainMatthestkz-tab
在选项的帮助下修改的版本tikz
。结果与原始图片非常接近。
\documentclass{article}
\usepackage{tkz-tab}
\begin{document}
\begin{tikzpicture}[t style/.style={solid}]
\tkzTabInit[espcl=2]{$x$/.5,$f'(x)$/.5,$f''(x)$/.5,$f(x)$/3} {$-\infty$,$0$,$2$,$3$,$+\infty$}
\tkzTabLine{,-,0,-,t,-,0,+, }
\tkzTabLine{,+,0,-,0,+,t,+, }
\node [below] (n1) at (N13){$+\infty$};
\node [below=1cm](n2) at (N23){$11$};
\node [below=2cm] (n3) at ([yshift=1em]N33){$-5$};
\node [above] (n4) at ([yshift=1em]N44){$-16$};
\node [below] (n5) at (N53){$+\infty$};
\node[below=1ex]at(n2){$ \mathrm{\Sigma.K.} $};
\node[below=1ex]at([xshift=.5ex]n3){$ \mathrm{\Sigma.K.} $};
\node[below=1ex]at([xshift=1ex]n4){$ \mathrm{T.E.} $};
\draw[>->] (n1) to [out=-90,in=180] (n2);
\draw[>->] (n2) to [out=0,in=90] (n3.west);
\draw[>->] (n3.east) to [out=-90,in=180] (n4);
\draw[>->] (n4) to [out=0,in=-90] (n5);
\end{tikzpicture}
\end{document}