User Tools

Site Tools


latex:tikz

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
latex:tikz [2021/07/05 21:48] – [How to draw diagrams in LaTeX with TikZ] iwnlatex:tikz [2022/12/02 15:42] (current) – [For-loops: Pseudorapidity 𝜂 and polar angle 𝜃] iwn
Line 6: Line 6:
   * [[https://www.sharelatex.com/blog/2013/08/27/tikz-series-pt1.html|Some basic shapes]].   * [[https://www.sharelatex.com/blog/2013/08/27/tikz-series-pt1.html|Some basic shapes]].
   * [[https://www.tug.org/TUGboat/tb29-1/tb91walczak.pdf|Some more basic shapes]].   * [[https://www.tug.org/TUGboat/tb29-1/tb91walczak.pdf|Some more basic shapes]].
-  * [[http://www.texample.net/tikz/examples/|Large database of simple and advanced examples]] with a [[http://www.texample.net/tikz/examples/area/physics/|physics section]], including a Feynman diagram and a Standard Model diagram. +  * [[http://www.texample.net/tikz/examples/|TeXample]]: A large database of simple and advanced examples with a [[http://www.texample.net/tikz/examples/area/physics/|physics section]], including a Feynman diagram and a Standard Model diagram. This website will be superseded by [[https://tikz.net|TikZ.net]]
-  * The examples below and many more are also available on [[https://github.com/IzaakWN/CodeSnippets/tree/master/LaTeX/TikZ|GitHub]] and [[https://ineuteli.web.cern.ch/ineuteli/diagrams/|this gallery]].+  * The examples below and many more are also available on [[https://github.com/IzaakWN/CodeSnippets/tree/master/LaTeX/TikZ|GitHub]] and [[https://ineuteli.web.cern.ch/ineuteli/diagrams/|this gallery page]].
   * [[http://pgf.sourceforge.net/pgf_CVS.pdf|Official TikZ & PGF manual]].   * [[http://pgf.sourceforge.net/pgf_CVS.pdf|Official TikZ & PGF manual]].
 +  * [[http://tug.ctan.org/info/visualtikz/VisualTikZ.pdf|Visual Tikz]]: an extensive cheat sheet with TikZ's many features and commands. 
   * For Feynman diagrams, please see [[latex:feynman|this page]].   * For Feynman diagrams, please see [[latex:feynman|this page]].
- 
  
  ===== Control regions =====  ===== Control regions =====
Line 389: Line 389:
 </WRAP></WRAP> </WRAP></WRAP>
  
 +Using a for-loop over two variables:
 +<WRAP group><WRAP half column lo 65%>
 +<code latex>
 +\begin{tikzpicture}[scale=3]
 +  
 +  % limits
 +  \def\R{1.2} % radius/length of lines
 +  
 +  % axis labels
 +  \node[scale=1,below left=1] at (0,\R) {$y$}; % y axis
 +  \node[scale=1,below left=1] at (\R,0) {$z$}; % z axis
 +  
 +  % lines
 +  \foreach \t/\e in {90/0,60/0.55,45/0.88,30/1.32,10/2.43,0/+\infty}{ % loop over theta/eta
 +    \pgfkeys{/pgf/number format/precision=2}
 +    \draw[->,black!60!red,thick,line cap=round] % eta lines
 +      (0,0) -- (\t:\R) node[anchor=180+\t,black] {$\eta=\e$}
 +      node[black,pos=0.7,fill=white,scale=0.8,inner sep=1.5pt] {$\theta=\t^\circ$};
 +  }
 +  
 +\end{tikzpicture}
 +</code>
 +</WRAP><WRAP half column 30%>
 +\\
 +{{ latex:tikz:axis2d_pseudorapidity.png ? 2000 }}
 +\\
 +</WRAP></WRAP>
  
 +Using for-loop and calculation + rounding:
 <WRAP group><WRAP half column lo 65%> <WRAP group><WRAP half column lo 65%>
 <code latex> <code latex>
Line 395: Line 423:
      
   % limits   % limits
-  \def\R{1.2}+  \def\R{1.2} % radius/length of lines
      
   % axis labels   % axis labels
-  \node[scale=0.9,below=5pt,left=2pt] at (0,\R) {$y$}; +  \node[scale=1,below left=1] at (0,\R) {$y$}; % y axis 
-  \node[scale=0.9,left=5pt,below=2pt] at (\R,0) {$z$};+  \node[scale=1,below left=1] at (\R,0) {$z$}; % z axis
      
   % lines   % lines
-  \foreach \t/\e in {90/0,60/0.55,45/0.88,30/1.32,10/2.44,0/\infty}{ +  \pgfkeys{/pgf/number format/precision=2} % two decimals 
-    \draw[->,black!60!red,thick] +  \foreach \t in {90,60,45,30,10,0}{ % loop over theta 
-      (0,0) -- ({\R*cos(\t)},{\R*sin(\t)}) +    \ifnum \t = 0 
-      node[anchor=180+\t,black] {$\eta=\e$}; +      \def\e{+\infty} % infinity symbol 
-    \node[fill=white,scale=0.8] at ({0.8*cos(\t)},{0.8*sin(\t)}) {$\theta=\t^\circ$};+    \else 
 +      \pgfmathparse{-ln(tan(\t/2))} % pseudorapidity 
 +      %\pgfmathroundto{\pgfmathresult} % round without traling zeroes 
 +      \pgfmathroundtozerofill{\pgfmathresult} % round with trailing zeroes 
 +      \pgfmathsetmacro\e{\t==90?0:\pgfmathresult} % no trailing zeroes for theta = 0 
 +    \fi 
 +    \draw[->,black!60!red,thick,line cap=round% eta lines 
 +      (0,0) -- (\t:\R) node[anchor=180+\t,black] {$\eta=\e$} 
 +      node[black,pos=0.7,fill=white,scale=0.8,inner sep=1.5pt] {$\theta=\t^\circ$};
   }   }
-    +  
 \end{tikzpicture} \end{tikzpicture}
 </code> </code>
 </WRAP><WRAP half column 30%> </WRAP><WRAP half column 30%>
 \\ \\
-{{ latex:theta-eta.png ? 2000 }}+{{ latex:tikz:axis2d_pseudorapidity.png ? 2000 }}
 \\ \\
 </WRAP></WRAP> </WRAP></WRAP>
Line 800: Line 836:
  ===== 3D axis with spherical coordinates & CMS coordinate system =====  ===== 3D axis with spherical coordinates & CMS coordinate system =====
  
-This piece of code is based on [[https://tex.stackexchange.com/questions/116206/how-to-draw-and-annotate-a-spherical-coordinate-system|this StackExchange thread]]. It is a simple exercise in making axes and labeling angles in 3D. ''\usepackage{tikz-3dplot}'' needs to be included. The full code can be found [[latex:example_spherical_coordinates|here]].+This piece of code is based on [[https://tex.stackexchange.com/questions/116206/how-to-draw-and-annotate-a-spherical-coordinate-system|this StackExchange thread]]. It is a simple exercise in making axes and labeling angles in 3D. ''\usepackage{tikz-3dplot}'' needs to be included. The full code can be found [[https://tikz.net/axis3d/|here]].
  
 <WRAP group><WRAP half column lo 65%> <WRAP group><WRAP half column lo 65%>
Line 838: Line 874:
  
  
-An example of rotating the 3D axes with the CMS conventional coordinate system by using the option ''rotate around x=<//angle//>'' and more ([[latex:example_spherical_coordinates|full code]]):+An example of rotating the 3D axes with the CMS conventional coordinate system by using the option ''rotate around x=<//angle//>'' and more ([[https://tikz.net/axis3d_cms|full code]]):
  
 <WRAP group><WRAP third column 20%> <WRAP group><WRAP third column 20%>
Line 908: Line 944:
 \end{tikzpicture} \end{tikzpicture}
 </code></WRAP> </code></WRAP>
- 
- 
- 
- 
  
  
Line 919: Line 951:
  ===== Tau lepton decay signatures =====  ===== Tau lepton decay signatures =====
  
-Inspiration from [[http://cds.cern.ch/record/1514540|Takahashi & Tomoto (2012) [Fig. 3.14, p. 37]]]. [[latex:tikz:tau_decay_signatures|Full code]].+Inspiration from [[http://cds.cern.ch/record/1514540|Takahashi & Tomoto (2012) [Fig. 3.14, p. 37]]]. [[https://tikz.net/tau_decay/|Full code]].
  
 \\ \\
Line 980: Line 1012:
  ===== Higgs decay planes =====  ===== Higgs decay planes =====
  
-Decay planes of Higgs decay to measure the Higgs boson's parity. The full code can be found [[latex:tikz:decay_planes|here]]. Adaptation of [[https://arxiv.org/abs/hep-ph/0503172|Djouadi (2008) [Fig. 2.6, 2.11]]].+Decay planes of Higgs decay to measure the Higgs boson's parity. The full code can be found [[https://tikz.net/decay_planes/|here]]. Adaptation of [[https://arxiv.org/abs/hep-ph/0503172|Djouadi (2008) [Fig. 2.6, 2.11]]].
  
 <WRAP group><WRAP third column 20%> <WRAP group><WRAP third column 20%>
Line 998: Line 1030:
  ===== Impact parameters =====  ===== Impact parameters =====
  
-Examples of defining impact parameters in proton collisions ([[latex:tikz:impact_parameters|full code]]).+Examples of defining impact parameters in proton collisions ([[https://tikz.net/impact_parameters/|full code]]).
  
 <WRAP group><WRAP column 28%> <WRAP group><WRAP column 28%>
Line 1010: Line 1042:
  ===== Timelines and scales =====  ===== Timelines and scales =====
  
-Examples of a simple time or energy scale with labels and arrows ([[latex:tikz:timescales|full code]]).+Examples of a simple time or energy scale with labels and arrows ([[https://tikz.net/timeline/|full code]]).
  
 <WRAP group><WRAP third column 15%> <WRAP group><WRAP third column 15%>
Line 1032: Line 1064:
  ===== Jets cones =====  ===== Jets cones =====
  
-Two examples of cones. Full code can be found [[latex:tikz:jet_cones|here]].+Two examples of cones. Full code can be found [[https://tikz.net/jet_cone/|here]].
  
  
Line 1143: Line 1175:
  ===== Top jets ===  ===== Top jets ===
  
-The full code can be found [[latex:tikz:jet_top|here]].+The full code can be found [[https://tikz.net/jet_top/|here]].
  
 <WRAP group><WRAP column 30%> <WRAP group><WRAP column 30%>
Line 1192: Line 1224:
  
  
- ===== Jets vectors =====+ ===== Jet vectors =====
  
-One can do some projections of jet and MET vectors to construct variables like MT2 in SUSY searches. The full code can be found [[latex:tikz:jet_vectors|here]].+One can do some projections of jet and MET vectors to construct variables like MT2 in SUSY searches. The full code can be found [[https://tikz.net/jet_vectors/|here]].
  
 <WRAP group><WRAP half column 54%> <WRAP group><WRAP half column 54%>
Line 1259: Line 1291:
 Some different methods of finding the tangent to a circle or ellipse in TikZ. Some different methods of finding the tangent to a circle or ellipse in TikZ.
 Using these methods a nice cone can be made. Using these methods a nice cone can be made.
-The full code can be found [[latex:tikz:circle_tangent|here]].+The full code can be found [[https://tikz.net/circle_tangent/|here]].
  
  
latex/tikz.1625514534.txt.gz · Last modified: 2021/07/05 21:48 by iwn