Book Image

LaTeX Graphics with TikZ

By : Stefan Kottwitz
5 (3)
Book Image

LaTeX Graphics with TikZ

5 (3)
By: Stefan Kottwitz

Overview of this book

In this first-of-its-kind TikZ book, you’ll embark on a journey to discover the fascinating realm of TikZ—what it’s about, the philosophy behind it, and what sets it apart from other graphics libraries. From installation procedures to the intricacies of its syntax, this comprehensive guide will help you use TikZ to create flawless graphics to captivate your audience in theses, articles, or books. You’ll learn all the details starting with drawing nodes, edges, and arrows and arranging them with perfect alignment. As you explore advanced features, you’ll gain proficiency in using colors and transparency for filling and shading, and clipping image parts. You’ll learn to define TikZ styles and work with coordinate calculations and transformations. That’s not all! You’ll work with layers, overlays, absolute positioning, and adding special decorations and take it a step further using add-on packages for drawing diagrams, charts, and plots. By the end of this TikZ book, you’ll have mastered the finer details of image creation, enabling you to achieve visually stunning graphics with great precision.
Table of Contents (18 chapters)

Drawing on background and foreground layers

When a drawing command overprints another object, and we don’t want this, we can usually arrange the order of commands. However, it’s not always possible. Consider our matrix example from the previous section: We had to draw the highlighting for the submatrices after the matrices because we used their cell coordinates as reference coordinates. We cannot change the drawing order here. Without transparency, the numbers in the cells would be overprinted by the yellow rectangle.

Now, we get to another solution for the overprinting problem: we use layers. Specifically, we use the background layer. We will apply it to our matrix example.

First, load the backgrounds library in the document preamble:

\usetikzlibrary{backgrounds}

Now, we put the nodes, which we created in the previous section, into a scope environment with the on background layer option:

\begin{scope}[on background layer]
  \node (m1) [submatrix...