1.8K Views
June 29, 24
スライド概要
第30回日曜数学会
https://www.youtube.com/live/IqokAVSsZnI
TikZでの作図事例を紹介しました #日曜数学会 - usami-k 数学日記
https://usami-k.hatenadiary.jp/entry/2024/06/29/225457
https://usami-k.github.io/
TikZ でいろいろ作図した話 宇佐見 公輔 2024 年 6 月 29 日 1/16 宇佐見 公輔 TikZ でいろいろ作図した話
TikZ とは TikZ は、LaTeX で図を描画するためのパッケージです。 \tikz \draw[thick,rounded corners=8pt] (0,0) -- (0,2) -- (1,3.25) -- (2,2) -- (2,0) -- (0,2) -- (2,2) -- (0,0) -- (2,0); 2/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 1 実際の技術記事で描いた図の例を挙げます。 TikZ のコード: https://github.com/usami-k/qiita-contents/ tree/main/images/2024-rust-nannou-2 𝑄 𝑃𝑄⃗ 𝑃𝑄⃗ ∗ 0.1 𝑃 𝑂𝑄⃗ 𝑂𝑃⃗ 𝑂 3/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 1:コード(1/4) \begin{tikzpicture} %%% 座標の定義 \coordinate (O) at (0,0); \coordinate (P) at (2,2); \coordinate (Q) at (-3,3); 4/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 1:コード(2/4) 𝑄 𝑃 𝑂 %%% 点の描画 \fill (O) circle (2pt) node[below]{$O$}; \fill (P) circle (2pt) node[right]{$P$}; \fill (Q) circle (2pt) node[left]{$Q$}; 5/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 1:コード(3/4) 𝑄 𝑃𝑄⃗ 𝑃 𝑂𝑄⃗ 𝑂𝑃⃗ 𝑂 %%% ベクトルの描画 \draw[thick,-{Stealth}] (O)--(P) node[...]{$\vec{OP}$}; \draw[dashed,-{Stealth}] (O)--(Q) node[...]{$\vec{OQ}$}; \draw[thick,-{Stealth}] (P)--(Q) node[...]{$\vec{PQ}$}; 6/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 1:コード(4/4) 𝑄 𝑃𝑄⃗ 𝑃𝑄⃗ ∗ 0.1 𝑃 𝑂𝑄⃗ 𝑂𝑃⃗ 𝑂 %%% 内分点の描画(TikZ の座標計算の機能を使う) \path (P)--(Q) coordinate[pos=0.2] (P2); \fill (P2) circle (2pt); \draw[thick,...] (P)--(P2) node[...]{$\vec{PQ}*0.1$}; \end{tikzpicture} 7/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 2:極座標での指定 %%% 極座標での指定 (角度: 半径) \coordinate (P0) at (0:3); \coordinate (P1) at (40:3); \coordinate (P2) at (80:3); \coordinate (P3) at (120:3); \coordinate (P4) at (160:3); 8/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 2:角の図示 2𝜋 2𝜋 𝑛 𝑛 2𝜋 𝑛 %%% 角の図示 \draw pic[draw,"$\frac{2\pi}{n}$", angle eccentricity=2] {angle=P0--O--P1}; \draw pic[draw,"$\frac{2\pi}{n}$", angle eccentricity=2] {angle=P1--O--P2}; \draw pic[draw,"$\frac{2\pi}{n}$", angle eccentricity=2] {angle=P2--O--P3}; 9/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 3:Square-1 の作図 前回の日曜数学会で Square-1 の話をしたときも、TikZ で描いて いました。 10/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 3:小ピースと大ピース (b) 大ピース (a) 小ピース %%% 小ピース \draw (0:1) -- ([turn]180:1) -- ([turn]-150:1) -- cycle; %%% 大ピース \draw (0:1) -- ([turn]180:1) -- ([turn]-120:1) -- ([turn]-75:0.707) -- cycle; 11/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 3:相対座標による小ピースの描画 (b) 始点の変更 (a) 小ピース %%% 小ピース \draw (0:1) -- ([turn]180:1) -- ([turn]-150:1) -- cycle; %%% 始点の変更 \draw (120:1) -- ([turn]180:1) -- ([turn]-150:1) -- cycle; 12/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 3:相対座標による大ピースの描画 (a) 大ピース (b) 始点の変更 %%% 大ピース \draw (0:1) -- ([turn]180:1) -- ([turn]-120:1) -- ([turn]-75:0.707) -- cycle; %%% 始点の変更 \draw (120:1) -- ([turn]180:1) -- ([turn]-120:1) -- ([turn]-75:0.707) -- cycle; 13/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図例 3:マクロを活用してピースを並べる %%% マクロ定義 \def\spiece{-- ([turn]180:1) -- ([turn]-150:1) -- cycle} \def\lpiece{-- ([turn]180:1) -- ([turn]-120:1) -- ([turn]-75:0.707) -- cycle} %%% ピースを並べる \draw ( 0:1) \spiece; \draw ( 30:1) \spiece; \draw ( 60:1) \lpiece; \draw (120:1) \spiece; \draw (150:1) \spiece; \draw (180:1) \lpiece; \draw (240:1) \spiece; 14/16 宇佐見 公輔 TikZ でいろいろ作図した話
作図のために LaTeX + TikZ を使う TikZ は普通、LaTeX 文書上で図を描くために使います。 しかし使い方を覚えると、LaTeX 以外でも活用したくなります。 そんなときも、次のようにすれば対応できます。 1 LaTeX + TikZ で図を描く 2 描いた図を PDF にする(preview パッケージが便利) 3 PDF を画像に変換する(各種変換ツールを利用) この方法で、TikZ を作図ツールとして使って技術記事などで使い ました。 15/16 宇佐見 公輔 TikZ でいろいろ作図した話
まとめ TikZ のテクニック: 座標計算(内分点) 極座標での指定 角の図示 相対座標での指定 マクロの活用 ほかにもいろいろな機能があります(TikZ のマニュアルはなかな かに膨大な量です)。 16/16 宇佐見 公輔 TikZ でいろいろ作図した話