Невозможно скомпилировать базовые коды tikz из pgfmanual

Невозможно скомпилировать базовые коды tikz из pgfmanual

В прошлом семестре я начал использовать LaTeX только для выполнения заданий и домашних работ, но теперь мне захотелось перейти на следующий уровень.

Я начал с tikzбиблиотеки, следуя pgfmanual. Каждый раз, когда я пытаюсь скомпилировать свой код, я получаю другой результат из документации, или он вообще не компилируется.

Например, этот первый код я скопировал прямо из документации.

    \documentclass{standalone}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[>=stealth, scale=3] 

    \clip (-2, -0.2) rectangle (2,0.8);
    \draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
    \draw[<->](-1.5, 0) -- (1.5,0);
    \draw[<->](0, -1.5) -- (0, 1.5);
    \draw (0,0) circle [radius=1cm];

    \draw[very thick,red]
        (30:1cm) -- node[left=1pt,fill=white] {$\sin \alpha$} (30:1cm |- x axis);
    \draw[very thick blue]
        (30:1cm |- x axis) -- node[below=2pt,fill=white] {$\cos \alpha$} (0,0);

    \filldraw[fill=green!20!white, draw=green!50!black] (0,0) -- (3mm,0mm)
        arc [start angle=0, end angle=30, radius=3mm] --cycle;
    \foreach \x\xtext in {-1,-0.5/-\frac{1}{2}, 1}
        \draw (\x cm, 1pt) -- (\x cm, -1pt) node [anchor=north] {$\xtext$};
    \foreach \y/\ytext in {-1,-0.5/-\frac{1}{2}, 0.5/\frac{1}{2}, 1}
        \draw (1pt, \y cm) -- (-1pt, \y cm) node [anchor=east] {$\ytext$};


    \path [name path=upward line] (1,0) -- (1,1);
    \path [name path=sloped line] (0,0) -- (30:1.5cm);
    \draw [name intersections={of=upward line and sloped line, by=t}]
            [very thick, orange]  (1,0) -- node [right=1pt,fill=white];
            {$\displaystyle \tan \alpha \color{black} =
                \frac{{\color{red}\sin \alpha}}{\color{blue} \cos \alpha}$} (t);


\end{tikzpicture}


\end{document}

Вот результат компиляции:

Результат после компиляции этого кода

Это результат, показанный в документации.введите описание изображения здесь:

ОС: Ubuntu 18.04 LTS Я установил на нее Texlive iso.

решение1

Вы не можете просто скопировать и вставить примеры кода из руководства. Вам на самом деле нужно прочитать руководство, чтобы узнать, как использовать примеры. В этом случае вам не хватает \usetikzlibrary{intersections}.

Вот соответствующая часть из учебника:

введите описание изображения здесь

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}[scale=3]
  \clip (-2,-0.2) rectangle (2,0.8);
  \draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
  \filldraw[fill=green!20,draw=green!50!black] (0,0) -- (3mm,0mm)
    arc [start angle=0, end angle=30, radius=3mm] -- cycle;
  \draw[->] (-1.5,0) -- (1.5,0) coordinate (x axis);
  \draw[->] (0,-1.5) -- (0,1.5) coordinate (y axis);
  \draw (0,0) circle [radius=1cm];

  \draw[very thick,red]
    (30:1cm) -- node[left=1pt,fill=white] {$\sin \alpha$} (30:1cm |- x axis);
  \draw[very thick,blue]
    (30:1cm |- x axis) -- node[below=2pt,fill=white] {$\cos \alpha$} (0,0);
  \path [name path=upward line] (1,0) -- (1,1);
  \path [name path=sloped line] (0,0) -- (30:1.5cm);
  \draw [name intersections={of=upward line and sloped line, by=t}]
    [very thick,orange] (1,0) -- node [right=1pt,fill=white]
    {$\displaystyle \tan \alpha \color{black}=
      \frac{{\color{red}\sin \alpha}}{\color{blue}\cos \alpha}$} (t);

  \draw (0,0) -- (t);

  \foreach \x/\xtext in {-1, -0.5/-\frac{1}{2}, 1}
    \draw (\x cm,1pt) -- (\x cm,-1pt) node[anchor=north,fill=white] {$\xtext$};
  \foreach \y/\ytext in {-1, -0.5/-\frac{1}{2}, 0.5/\frac{1}{2}, 1}
    \draw (1pt,\y cm) -- (-1pt,\y cm) node[anchor=east,fill=white] {$\ytext$};
\end{tikzpicture}
\end{document}

Связанный контент