在 LaTeX 中绘图而不使用 tikz 或 pgfplots

在 LaTeX 中绘图而不使用 tikz 或 pgfplots

我正在为作业排版一幅图画,但我只能更改其中的内容\begin{document}——也就是说,我不能添加任何软件包或在序言中做出任何更改。不幸的是,我正在使用的平台没有tikz或没有pgfplots安装,那么有没有办法让我不使用任何一个软件包就可以制作基本的图画?(例如绘制正方形和点)

答案1

假设以下情况:

  • xcolor在你的序言中,或者你知道如何定义\colorlet
  • 您可以将文件复制到工作目录(将在其中\includegraphics搜索的目录),

然后你仍然可以\input手动获取 PGF 文件。例如

\documentclass{article}
\usepackage{xcolor}
\begin{document}

\def\ProvidesPackageRCS#1$#2${}
\def\ProvidesFileRCS#1$#2${}
\long\def\AtBeginDocument#1{}
\def\RequirePackage#1{}
\def\EveryShipout#1{}
\makeatletter
\input{pgfutil-common.tex}
\input{pgfutil-latex.def}
\input{pgfsys.code.tex}
\input{pgfcore.code.tex}
\input{pgfsyssoftpath.code.tex}
\input{pgfsysprotocol.code.tex}
\input{pgfcorepathconstruct.code.tex}


A rectangle
\pgfpathrectangle{\pgfpoint{-60pt}{-5pt}}{\pgfpoint{60pt}{20pt}}
\pgfsetcolor{red}\pgfusepath{draw}
\pgfsetcolor{black}

$$$$

A point
\pgfpathcircle{\pgfpointorigin}{5pt}
\pgfusepath{fill}

$$$$

A curve
\pgfpathmoveto{\pgfpointorigin}
\pgfpathcurveto{\pgfpoint{10pt}{10pt}}{\pgfpoint{20pt}{-10pt}}{\pgfpoint{30pt}{00pt}}
\pgfusepath{draw}


\end{document}

您可以进一步输入 Ti如果必要的话,请按 Z。

\input pgffor.code.tex

A lot of points
\par\foreach\n in{1,...,200}{
    \xdef\n{\n}
    \pgfmathsetmacro\x{cos(\n r)*sqrt(\n)*10+200}\xdef\x{\x}
    \pgfmathsetmacro\y{sin(\n r)*sqrt(\n)*10-100}\xdef\y{\y}
    \pgfpathcircle{\pgfpoint{\x pt}{\y pt}}{2pt}
}
\pgfusepath{draw}

\vskip300pt

\input pgfmoduleplot.code.tex
\input tikz.code.tex

A plot
\tikz\draw[scale=3,domain=0:4,samples=300]plot({cos(3*\x r)},{sin(5*\x r)});

相关内容