Wednesday, May 6, 2015

TikZ: Diagram Panah

Salah satu cara untuk menyatakan relasi antara dua himpunan adalah dengan menggunakan diagram panah. Dalam hal ini saya gunakan paket tikz untuk menunjukkannya. Perhatikan gambar di samping ini.

Dalam preamble saya siapkan library arrows dan menetapkan (bila perlu) warna biru. Untuk jenis huruf teks, saya gunakan gentium.
\usepackage{tikz}
\usetikzlibrary{arrows}
\definecolor{biru}{RGB}{56,94,141}
\usepackage{gentium}
Bentuk elips yang mewakili masing-masing himpunan $\small A$ dan $\small B$ dibuat dari lingkaran dengan mengatur skala pada arah absis dan ordinatnya. Pusat lingkaran untuk himpunan $\small A$ ditetapkan pada koordinat $\small (0,0)$ sedangkan untuk himpunan $\small B$ koordinat $\small (6,0)$.
\draw[very thick,biru] 
(0,0) circle [x radius=1.5cm, y radius=5cm]
(6,0) circle [x radius=1.5cm, y radius=5cm];
Berikutnya kita tetapkan unsur-unsur pada kedua himpunan.
\node (a1) at (0,3)  {\color{biru}$a_1$};
\node (a2) at (0,1)   {\color{biru}$a_2$};
\node (a3) at (0,-1)  {\color{biru}$a_3$};
\node (a4) at (0,-3)  {\color{biru}$a_4$};

\node (b1) at (6,2)  {\color{biru}$b_1$}; 
\node (b2) at (6,0)  {\color{biru}$b_2$};
\node (b3) at (6,-2) {\color{biru}$b_3$};
Kemudian kita pasangkan antaranggota dari kedua himpunan dengan tanda panah. Bentuk mata panah dapat kita tetapkan dengan opsi ->;, -latex, atau -stealth. Saya pilih yang terakhir.
\draw[thick,-stealth,biru] (a1.east) -- (b1);
\draw[thick,-stealth,biru] (a2.east) -- (b1);
\draw[thick,-stealth,biru] (a3.east) -- (b3);
\draw[thick,-stealth,biru] (a4.east) -- (b2);
Terakhir, kita tempatkan nama kedua himpunan dan nama relasi (atau fungsi).
\node[font=\color{biru}\large\bfseries] at (0,5.5) {A};
\node[font=\color{biru}\large\bfseries] at (6,5.5) {B};
\node[font=\color{biru}\large\bfseries] at (3,3.5) {$f$};
Dengan demikian pengkodean selengkapnya tampak seperti berikut ini.
  1. \documentclass{article}    
  2. \usepackage{tikz}
  3. \usetikzlibrary{arrows}
  4. \definecolor{biru}{RGB}{56,94,141}
  5. \usepackage{gentium}
  6. \begin{document}
  7. \begin{tikzpicture}[scale=.5]
  8. \draw[very thick,biru]
  9. (0,0) circle [x radius=1.5cm, y radius=5cm]
  10. (6,0) circle [x radius=1.5cm, y radius=5cm];
  11. \node (a1) at (0,3)  {\color{biru}$a_1$};
  12. \node (a2) at (0,1)   {\color{biru}$a_2$};
  13. \node (a3) at (0,-1)  {\color{biru}$a_3$};
  14. \node (a4) at (0,-3)  {\color{biru}$a_4$};
  15. \node (b1) at (6,2)  {\color{biru}$b_1$};
  16. \node (b2) at (6,0)  {\color{biru}$b_2$};
  17. \node (b3) at (6,-2) {\color{biru}$b_3$};
  18. \draw[thick,-stealth,biru] (a1.east) -- (b1);
  19. \draw[thick,-stealth,biru] (a2.east) -- (b1);
  20. \draw[thick,-stealth,biru] (a3.east) -- (b3);
  21. \draw[thick,-stealth,biru] (a4.east) -- (b2);
  22. \node[font=\color{biru}\large\bfseries] at (0,5.5) {A};
  23. \node[font=\color{biru}\large\bfseries] at (6,5.5) {B};
  24. \node[font=\color{biru}\large\bfseries] at (3,3.5) {$f$};
  25. \end{tikzpicture}    
  26. \end{document}

Dokumen untuk gambar tersebut saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015


3 comments:

tex said...

Selamat pagi mas, mohon maaf ini pertanyaan diluar topik yang ada, sudah lebih dari 5 hari ini saya tidak bisa membuka web latex yaitu latexstudio.net. Saya tidak tau apakah karena koneksi internet saya atau tidak . Yang saya tanyakan : Apakah ini juga bermasalah jika Mas yang buka situs tersebut. Padahal situs tersebut hampir setiap update tentang informasi LaTeX. Terima Kasih.

Unknown said...

Terima kasih atas tutorial dan informasinya, sangat membantu sekali. Tetapi saya masih bingung bagaimana cara instalasi packages/library di LaTEX untuk itu saya mohon untuk diberikan tutorialnya. Terima kasih.

Eman Sulaeman said...

Sudah tersedia di dalam LaTeX, kita hanya perlu mencantumkannya pada mukadimah sesuai dengan keperluannya. Misalnya, untuk membuat arsiran kita memerlukan kepustakaan ``patterns'', maka pada mukan harus dicantumkan \usetikzlibrary{patterns}.

Related Posts Plugin for WordPress, Blogger...