Underleaf Logo
Underleaf
PricingAboutBlog
Log InGet started

Learn TikZ

Getting Started

  • What is TikZ?
  • TikZ for Beginners
  • Basic Setup

TikZ Basic Setup

Configure your LaTeX document to use TikZ for creating graphics.

Loading the TikZ Package

To use TikZ, add the following line to your document preamble:

\documentclass{article} \usepackage{tikz} \begin{document} % Your TikZ drawings here \end{document}

Loading TikZ Libraries

TikZ has many optional libraries that add extra functionality. Load them with \usetikzlibrary:

\usepackage{tikz} \usetikzlibrary{arrows.meta} % Modern arrow tips \usetikzlibrary{shapes.geometric} % More shapes \usetikzlibrary{positioning} % Better node positioning \usetikzlibrary{calc} % Coordinate calculations % Or load multiple libraries at once: \usetikzlibrary{arrows.meta, shapes.geometric, positioning, calc}

Essential TikZ Libraries

LibraryPurpose
arrows.metaModern, customizable arrow tips
positioningRelative node positioning (above, below, left, right)
shapes.geometricTriangles, diamonds, trapeziums, etc.
shapes.symbolsSymbols and icons
calcCoordinate calculations and math
fitFit nodes around other nodes
backgroundsBackground layers for diagrams
patternsFill patterns (hatching, dots, etc.)
shadowsDrop shadows for nodes
decorations.pathreplacingBraces, zigzag lines, etc.

Specialized Libraries

For specific diagram types, use these specialized libraries:

% For flowcharts \usetikzlibrary{shapes.geometric, arrows.meta} % For mind maps \usetikzlibrary{mindmap} % For trees \usetikzlibrary{trees} % For graphs \usetikzlibrary{graphs, graphs.standard} % For circuit diagrams (separate package) \usepackage{circuitikz} % For plots (separate package) \usepackage{pgfplots} \pgfplotsset{compat=1.18}

Global Style Settings

Define default styles for all TikZ pictures in your document:

\usepackage{tikz} % Set global options for all tikzpictures \tikzset{ every picture/.style={ line width=0.75pt, >=stealth }, % Define custom styles mybox/.style={ draw, rectangle, rounded corners, minimum width=2cm, minimum height=1cm, fill=blue!20 }, myarrow/.style={ ->, thick, blue } }

Now use these styles in your drawings:

\begin{tikzpicture} \node[mybox] (a) at (0,0) {Box A}; \node[mybox] (b) at (3,0) {Box B}; \draw[myarrow] (a) -- (b); \end{tikzpicture}

Complete Setup Template

Here's a comprehensive template for documents with TikZ graphics:

\documentclass{article} % TikZ package and essential libraries \usepackage{tikz} \usetikzlibrary{ arrows.meta, positioning, shapes.geometric, calc, fit, backgrounds } % Global TikZ settings \tikzset{ every picture/.style={line width=0.75pt}, >={Stealth[length=3mm]}, box/.style={ draw, rectangle, rounded corners=3pt, minimum width=2cm, minimum height=0.8cm, text centered } } \begin{document} \section{My Diagram} \begin{tikzpicture} \node[box, fill=blue!20] (start) {Start}; \node[box, fill=green!20, right=2cm of start] (end) {End}; \draw[->] (start) -- (end); \end{tikzpicture} \end{document}

Troubleshooting

  • Package not found: Make sure you have a complete TeX distribution (TeX Live or MiKTeX).
  • Library not found: Check the spelling and ensure the library exists. Some libraries require additional packages.
  • Compilation slow: TikZ can be slow for complex drawings. Consider using the external library to cache figures.

Next Steps

With TikZ set up, start learning drawing commands:

  • Lines and Paths - Drawing lines and custom paths
  • Basic Shapes - Circles, rectangles, and more
  • Coordinates - Understanding the coordinate system

TikZ Basic Setup

Configure your LaTeX document to use TikZ for creating graphics.

Loading the TikZ Package

To use TikZ, add the following line to your document preamble:

\documentclass{article} \usepackage{tikz} \begin{document} % Your TikZ drawings here \end{document}

Loading TikZ Libraries

TikZ has many optional libraries that add extra functionality. Load them with \usetikzlibrary:

\usepackage{tikz} \usetikzlibrary{arrows.meta} % Modern arrow tips \usetikzlibrary{shapes.geometric} % More shapes \usetikzlibrary{positioning} % Better node positioning \usetikzlibrary{calc} % Coordinate calculations % Or load multiple libraries at once: \usetikzlibrary{arrows.meta, shapes.geometric, positioning, calc}

Essential TikZ Libraries

LibraryPurpose
arrows.metaModern, customizable arrow tips
positioningRelative node positioning (above, below, left, right)
shapes.geometricTriangles, diamonds, trapeziums, etc.
shapes.symbolsSymbols and icons
calcCoordinate calculations and math
fitFit nodes around other nodes
backgroundsBackground layers for diagrams
patternsFill patterns (hatching, dots, etc.)
shadowsDrop shadows for nodes
decorations.pathreplacingBraces, zigzag lines, etc.

Specialized Libraries

For specific diagram types, use these specialized libraries:

% For flowcharts \usetikzlibrary{shapes.geometric, arrows.meta} % For mind maps \usetikzlibrary{mindmap} % For trees \usetikzlibrary{trees} % For graphs \usetikzlibrary{graphs, graphs.standard} % For circuit diagrams (separate package) \usepackage{circuitikz} % For plots (separate package) \usepackage{pgfplots} \pgfplotsset{compat=1.18}

Global Style Settings

Define default styles for all TikZ pictures in your document:

\usepackage{tikz} % Set global options for all tikzpictures \tikzset{ every picture/.style={ line width=0.75pt, >=stealth }, % Define custom styles mybox/.style={ draw, rectangle, rounded corners, minimum width=2cm, minimum height=1cm, fill=blue!20 }, myarrow/.style={ ->, thick, blue } }

Now use these styles in your drawings:

\begin{tikzpicture} \node[mybox] (a) at (0,0) {Box A}; \node[mybox] (b) at (3,0) {Box B}; \draw[myarrow] (a) -- (b); \end{tikzpicture}

Complete Setup Template

Here's a comprehensive template for documents with TikZ graphics:

\documentclass{article} % TikZ package and essential libraries \usepackage{tikz} \usetikzlibrary{ arrows.meta, positioning, shapes.geometric, calc, fit, backgrounds } % Global TikZ settings \tikzset{ every picture/.style={line width=0.75pt}, >={Stealth[length=3mm]}, box/.style={ draw, rectangle, rounded corners=3pt, minimum width=2cm, minimum height=0.8cm, text centered } } \begin{document} \section{My Diagram} \begin{tikzpicture} \node[box, fill=blue!20] (start) {Start}; \node[box, fill=green!20, right=2cm of start] (end) {End}; \draw[->] (start) -- (end); \end{tikzpicture} \end{document}

Troubleshooting

  • Package not found: Make sure you have a complete TeX distribution (TeX Live or MiKTeX).
  • Library not found: Check the spelling and ensure the library exists. Some libraries require additional packages.
  • Compilation slow: TikZ can be slow for complex drawings. Consider using the external library to cache figures.

Next Steps

With TikZ set up, start learning drawing commands:

Underleaf Logo
Underleaf

Empowering students and researchers with AI-powered tools for academic writing.

Go to appContact us

Company

PricingBlogTutorialsAffiliate Program

Free Tools

Image to LaTeXExcel to LaTeXArXiv to LaTeXTikZ GeneratorThesis GeneratorChrome ExtensionAll Tools

© 2026 Underleaf. All rights reserved.