对于我的一门课程,我使用了大量函数图,这些图都是使用 TikZ 和 tikzpicture 生成的。不幸的是,曾经编译得很好的东西(可能是去年秋天我最后一次进行重大更改时编译得很好)现在却不行了。我安装了 gnuplot 4.6,我相信它能正常工作(尽管考虑到我遇到的问题,我不能确定)。
以下是 MWE:
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\usetikzlibrary{arrows,matrix,positioning}
\usepackage{pgfplots}
\pagestyle{empty}
\begin{document}
Here is a figure:
\begin{center}
\begin{tikzpicture}[x=0.075cm,y=0.0225cm]
% set up maximum and minimum x- and y-coordinates
\def\xmin{-0.5}
\def\xmax{150}
\def\ymin{-1.8}
\def\ymax{210}
\draw[->,thick] (\xmin,0) -- (\xmax,0) node[right] {time};
\draw[->,thick] (0,\ymin) -- (0,\ymax) node[above] {$N$};
% tick marks and tick labels on axes
\foreach \x in {0,20,40,...,140}
\draw[thick] (\x,0pt) -- (\x,-3pt)
node[anchor=north] {\footnotesize\x};
\foreach \y in {0,25,50,...,200}
\draw[thick] (0pt,\y) -- (-3pt,\y)
node[anchor=east] {\footnotesize\y};
% now plot the function
\draw[color=black,thick, smooth,domain=0:148.1] plot[id=sigmoid] function{5.12821*2.71828**(0.1*x)/(1+(5.12821/200)*2.71828**(0.1*x))};
\end{tikzpicture}
\end{center}
\end{document}
当我尝试编译它(MikTeX 29,Windows 7)时,轴按应有的方式绘制,但函数本身却没有(这令人失望,因为绘制函数是练习的重点)。
有人可以在他们那边对 MWE 进行测试编译吗?如果您可以编译它并生成函数图,那么问题很可能出在我的 gnuplot 安装上。如果您无法编译它,那么 TikZ 中的某些东西发生了变化,导致 MWE 代码崩溃。
首先十分感谢。
答案1
感谢那些在他们那边尝试过 MWE 的人——你们正确地编译了所有内容,这正是我需要的确认,即问题出在我这边。gnuplot (5.0) 已正确安装在我的计算机上,并且可执行文件位于 env 路径中,因此不是 gnuplot。但是,后来我想起我在 *TeX 外部运行 gnuplot,需要转义一些东西。因此,我在各个地方向 MikTeX 提供了 --enable-write18,并且 MWE 编译得很好。
至于 @percusse 提出的 pgfplots 建议,我的文件是各种图形工具的大杂烩(这里有 PStricks,那里有 gnuplot,还有一些 pgf 图……),反映了我对 *TeX 各种图形工具的理解和技能的进步。对于这个特定的项目(实际上是一本书),我使用了 tikz/gnuplot 方法,并且不愿意(现在也是)将所有图形重新制作成 pgfplots 格式。不是因为我天生就喜欢其中一种,而是因为……我很懒。;-)
再次感谢...