我正在使用这个很棒的工具 tkz-fct 来创建漂亮的文档,但最近我得到了一个奇怪的结果。这是我的文档:
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{calc}
\usepackage{color}
\usepackage{pifont} %pour utiliser la police Ding
\usepackage[left=1.5cm,right=1.5cm,top=2cm,bottom=2cm]{geometry} %marges du document
\usepackage[french]{babel}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage[L]{thmbox}
\usepackage{eurosym}
\usepackage{enumitem} %pour modifer itemize et enumerate
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{mathrsfs} %pour utiliser mathscr
\usepackage{array,multirow,makecell}
\usepackage{fancyhdr} %package pour modifier les en-têtes
\usepackage{fancybox} %pour boîtes spéciales
\usepackage{tikz,tkz-tab,tkz-fct}
\usepackage{tikz-dependency} %permet de créer des schemas
\usepackage{sectsty} %permet de modifier les styles des sections (voir \sectionfont l.21)
\usepackage{fourier-orns}
\usepackage{shadethm} %pour theoremes en gris
\setcellgapes{1pt}
\makegapedcells
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash }b{#1}} %pour redéfinir les colonnes dans tabular
\newcolumntype{L}[1]{>{\raggedright\arraybackslash }b{#1}}
\newcolumntype{C}[1]{>{\centering\arraybackslash }b{#1}}
\renewcommand{\thesection}{\Roman{section}} %permet de changer la numérotation en chiffres romains des sections
\newshadetheorem{defi}{Définition} %crée un nouveau type de théorème
\newshadetheorem{thm}{Théorème}
\newshadetheorem{ppte}{Propriété}
\sectionfont{\sectionrule{3ex}{3pt}{-1.5ex}{1pt}} %mettre un trait de séparation dans les sections (package sectsty)
\pagestyle{fancy} %style en-têtes
\lhead{} %en-tête gauche
\chead{Lois à densité} %en-tête centrale
\rhead{T\up{ale}} %en-tête droite
\begin{document}
\begin{tikzpicture}
\tkzInit[xmin=-4,xmax=4,ymax=1]
\tkzDrawX[label={},noticks]
%\tkzDrawY
\tkzFct[domain=-2:2]{exp(-x**2)}
\tkzDrawArea[color=blue, domain = -0.5:1]
\tkzText(-1,0.75){$\mathscr{C}_{f}$}
\end{tikzpicture}
\end{document}
但是从现在开始,它不会产生我想要的结果,因为表面从点(-0.5,f(-0.5))开始,而不是从-0.5到1的积分。这是结果的图片:
这显然不是我想要的,现在这种情况已经扩展到我之前“正常”的所有“旧”文档。除了更新我的 Tex 发行版外,我认为我没有做任何特别的事情...如果有人有想法?
答案1
\documentclass[10pt,a4paper]{article}
\usepackage{tkz-fct}
\begin{document}
\begin{tikzpicture}
\tkzInit[xmin=-4,xmax=4,ymax=1]
\tkzDrawX[label={},noticks]
\tkzFct[domain=-2:2]{exp(-x**2)}
\tkzDrawArea[color=blue, domain = -0.5:1]
\end{tikzpicture}
\end{document}
问题出现在 pgf 3.0 中。使用 pgf 2.1 结果是正确的。我需要做一些调查来找到错误
这里有一个解决方案,但我不知道为什么结果与 pgf 3.0 不同
问题出在tkz-fct.sty中的代码:
(\tkz@ba,0)--plot [id = \tkz@fct@id]%
function{(\tkzFctgnuLast)/\tkz@init@ystep}--(\tkz@bb,0);
您需要用以下代码替换此代码
plot [id = \tkz@fct@id]%
function{(\tkzFctgnuLast)/\tkz@init@ystep} -- (\tkz@bb,0) -- (\tkz@ba,0) ;
或者
plot [id = \tkz@fct@id]%
function{(\tkzFctgnuLast)/\tkz@init@ystep} -- (\tkz@bb,0) -- (\tkz@ba,0) -- cycle;
可能的方法是找到 tkz-fct 1.16 c 并替换代码,或者您可以从我的网站下载版本 1.18 c:
现在我需要了解为什么?