LaTeXで図を直接描けるTikZの使い方2|線のスタイル

TikZ
TikZ

$\LaTeX$で図を扱いたいとき,直接.texファイルに直接記述することで直線・曲線・グラフなどの図を描くことができるパッケージ“TikZ”があります.

TikZでは描線について

  • 太さを変える
  • 点線や破線にする
  • 矢印にする

といったスタイルを変える方法があります.また,図の

  • 色を変える
  • 移動・拡大縮小・回転

といったこともでき,これらを扱えるようになれば図の表現の幅が飛躍的に広がります.

なお,本稿では以下のように3つのライブラリ intersections, calc, arrows.metaを用います.

$\LaTeX$の参考文献

以下は$\LaTeX$に関するオススメの参考書です.

LaTeX美文書作成入門 改訂第9版

[奥村晴彦 著/技術評論社]

$\TeX$はDonald E. Knuth氏が開発した数式処理に特化した組版処理システム(ざっくり言えば文書ソフト)です.

現在ではほとんどの数学の論文雑誌では$\LaTeX$により書かれた論文が標準となっています.

そのため,ほとんどの数学の研究者が論文作成の際に$\LaTeX$を使っていると言ってよいでしょう.

著者の奥村氏は日本における$\TeX$の第一人者で,本書は$\LaTeX$初心者から中級者まで幅広い層に役立つ$\LaTeX$の教科書です.

数式処理だけでなく$\LaTeX$を扱う際に便利な多くの機能の解説が載っており,しっかり理解して$\LaTeX$を習得することができます.

線のスタイル

まずは線のスタイルのオプションについて説明します.

線の太さ

例えば,線の太さを 1ptにしたいときは,

と記述すれば,

太さ1ポイントの線分
太さを指定するにはオプションで line width=を使う

と太さが 1ptの線が描けます.すなわち, drawの直後に [line width=Xpt]と記述すれば,線の太さが Xポイントのグラフが描けます.

このように具体的に幅を指定しても良いですが,以下のように標準で用意されている線の幅のオプションもあります.

線の太さ
種類 オプション 表示
0.1ptの線 ultra thin
太さ0.1ptの線分
0.2ptの線 very thin
太さ0.2ptの線分
0.4ptの線 thin
太さ0.4ptの線分
0.6ptの線 semithick
太さ0.6ptの線分
0.8ptの線 thick
太さ0.8ptの線分
1.2ptの線 very thick
太さ1.2ptの線分
1.6ptの線 ultra thick
太さ1.6ptの線分

veryultraについては very thickultra thickのようにスペースが必要ですが, semithickはスペースがないことに注意してください.

点線と破線

例えば,

と記述すれば,

点破線
点破線のデザインをするにはオプションに onoffを使う

と点破線が描けます.すなわち, dashpattern=のあとに on Xptで表示させる長さを, off Yptで表示させない長さを指定することで,これを繰り返すデザインの点破線となります.

このように具体的に点破線のデザインを指定しても良いですが,以下のように標準で用意されている点線・破線のオプションもあります.

線のデザイン
種類 オプション 表示
点線 dotted
点線
破線 dashed
破線
破点線 dash dot
点破線
破点々線 dash dot dot
点点破線

また,

と記述すれば,

間隔を調整した点線・破線
点線・破線の間隔を調整するにはオプションに denselyまたは looselyを使う

となります.すなわち, dottedまたは dashedの前に denselyをつければデザインが密になり, looselyをつければデザインが疎になります.

矢印

例えば,線を矢印にしたいときは,

と記述すれば,

右向き矢印と左向き矢印
線分を矢印にするにはオプションに -><-などを使う

と矢印が描けます.すなわち, drawの直後に [->]または [->]を記述すれば,線がその向きの矢印になります.

他にも,標準で用意されているオプションで両端を矢印にしたり,2重矢印にすることもできます.

線の矢印化
種類 オプション 表示
矢印(最初の端点) <-
左向き矢印
矢印(最後の端点) ->
右向き矢印
矢印(両端点) <->
両向き矢印
2重矢印 ->>
2重矢印

また,

と記述すれば,

矢の部分が太い(ステルス機型の)矢印
矢印の矢を太く(ステルス機型に)するにはオプションに >=stealthを使う

と太い(ステルス機型の)矢印となります.

二重線・透過

他に以下の標準で用意されている線のスタイルのオプションがあり,いくつか紹介します.

線のオプション
種類 オプション 表示
2重線 double
2重線
2重線
(間が赤)
double=red
間に色が付いた2重線
2重線
(間隔が2pt)
double distance=2pt
線の距離を指定した2重線
透過(60%) opacity=.3
透過した線分





色を変える

例えば,線を青にしたいときは,

と記述すれば,

色の付いた線分
線分の色を変えるにはオプションで色を指定する

と青線になります.すなわち, drawの直後に []を記述すれば,線がその色になります.

青以外にも,標準で用意されているオプションで色を指定することができ,いくつか紹介します.

線の色
種類 オプション 表示
red
赤色の線分
blue
青色の線分
yellow
黄色の線分
green
緑色の線分
orange
橙色の線分
gray
灰色の線分

また,

と記述すれば,

赤60%青40%の色で描いた線分
色を混ぜるにはオプションの色を 色1!(色1の割合)!色2と指定する

と赤60%青40%の色で描けます.





図の移動・拡大縮小・回転

例えば,線を移動したいとき,

と記述すれば,

図の平行移動
オプションを指定すれば図を平行移動させられる

と黒線が青線のように$x$軸方向に+1,$y$軸方向に+2平行移動します.

他にも様々な図の移動が可能で,以下に標準で用意されている図の移動のオプションの例を挙げます.なお,黒線が移動前,青線が移動後です.

線の色
種類 オプション 表示
平行移動
($x$軸方向:+1
$y$軸方向:−2)
shift={(1,-2)}
図のx軸方向に+1,y軸方向に-2の平行移動
拡大/縮小
(原点中心で2倍)
scale=2
図の原点中心の2倍拡大
拡大/縮小
(点(1,1)中心で2倍)
scale  around={2:(1,1)}
図の(1,1)中心の2倍拡大
回転
(原点中心20度)
rotate=20
図の原点中心の20度回転
回転
(点(1,1)中心20度)
rotate  around={20:(1,1)}
図の(1,1)中心の20度回転

コメント