Showing posts with label pengkodean. Show all posts
Showing posts with label pengkodean. Show all posts

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


Saturday, March 28, 2015

Showexpl

Pada tulisan sebelumnya sudah saya uraikan tentang cara menyoroti (highlighting) sintaks pengkodean dalam $\small\LaTeX$ dengan menggunakan paket minted. Dalam tulisan ini, dengan maksud yang sama tetapi dengan cara dan tujuan yang agak berbeda, saya akan tunjukkan penggunaan paket showexpl dari Rolf Niepraschk.

Paket showexpl adalah paket yang berdasarkan pada paket listing yang memberikan penyusunan kode sumber yang baik dengan penekanan pada kata kunci dan sebagainya. Oleh karena itu, penampakan dalam pengkodean yang ditunjukkan bergantung pada opsi-opsi dalam pengaturan
\lstdefinestyle{...}{...}
Yang khas dalam penggunaan paket ini adalah bahwa pengkodean dan hasil penyusunannya dapat kita tunjukkan dalam "sekali jalan", yaitu cukup kita muat dalam environment
\begin{LTXexample}[...]
...
\end{LTXexample}
Secara asal (default), pengkodean dan hasil penyusunannya itu terletak berdampingan (side by side). Ini menjadi masalah bila sintaks pengkodean itu cukup lebar, seperti yang akan saya tunjukkan contohnya. Tentu saja hal ini dapat diatasi dengan memuat opsi pengaturan yang bersesuaian. 
Nah, sekarang mari kita perhatikan contoh berikut ini.



Dalam contoh ini saya menggambarkan trafo, dengan menggunakan paket circuitikz dari Mas­simo Redaelli, dan sekaligus menunjukkan sintaks pengkodean untuk menggambarnya. Pengaturannya saya buat seperti ini
\usepackage{showexpl}
\lstdefinestyle{gayaku}{
    language={[LaTeX]TeX},texcsstyle=*\color{SeaGreen},
    literate=
    *{\{}{{\textcolor{Crimson}{\{}}}{1}
     {\}}{{\textcolor{Crimson}{\}}}}{1},
    basicstyle=\null,
    backgroundcolor=\color{paper!50},
    numbers=left, numberstyle=\scriptsize, stepnumber=1,
    numbersep=5pt,
    commentstyle=\color{DarkOrange},
    showstringspaces=false,
    keywordstyle=\color{stempel}\bfseries,
    morekeywords={circuitikz,draw,center},
    pos=l,frame=single,rframe=,framesep=\fboxsep,
    framerule=\fboxrule,rulecolor=\color{bistre},
    breaklines,breakautoindent=true,
    captionpos=t
}
Opsi-opsi dalam pengaturan inilah yang kita sesuaikan dengan penampakkan yang kita harapkan.

Pengkodean selengkapnya, untuk contoh dokumen di atas, berikut ini meliputi pula paket tikzpagenodes untuk menempatkan logo pada sudut kanan-atas halaman dan paket background untuk memuat latar "kertas". Selain itu juga memuat penetapan tiga warna yang saya gunakan.
\documentclass[a4paper,10pt]{article}
\usepackage[margin=1.5cm,top=1.5cm,bottom=2cm]{geometry}
\usepackage[svgnames,dvipsnames]{xcolor}
\usepackage{mathpazo,dejavu}
\usepackage[T1]{fontenc}
%\renewcommand{\rmdefault}{put}
\usepackage[indonesian]{babel}
\usepackage{tikz}
\usepackage{tikzpagenodes}
\usepackage[siunitx,cuteinductors,american]{circuitikz}

\definecolor{bistre}{RGB}{133, 109, 77}
\definecolor{stempel}{RGB}{0 34 85} 
\definecolor{paper}{RGB}{239,227,157}

\usepackage{showexpl}
\lstdefinestyle{gayaku}{
    language={[LaTeX]TeX},texcsstyle=*\color{SeaGreen},
    literate=
    *{\{}{{\textcolor{Crimson}{\{}}}{1}
     {\}}{{\textcolor{Crimson}{\}}}}{1},
    basicstyle=\null,
    backgroundcolor=\color{paper!50},
    numbers=left, numberstyle=\scriptsize, stepnumber=1,
    numbersep=5pt,
    commentstyle=\color{DarkOrange},
    showstringspaces=false,
    keywordstyle=\color{stempel}\bfseries,
    morekeywords={circuitikz,draw,center},
    frame=single,rframe=,framesep=\fboxsep,
    framerule=\fboxrule,rulecolor=\color{bistre},
    breaklines,breakautoindent=true,
    captionpos=t
}
\usepackage{adjustbox}
\usepackage{url}
\usepackage{amsmath,bm}
\let\ds\displaystyle
\usepackage{background}
\backgroundsetup{top,scale=2.6,angle=0,opacity=1,  %% adjust
contents={\includegraphics[width=\textwidth,height=6cm]{kertaskoran}}
}%

\begin{document}

\begin{tikzpicture}[remember picture,overlay]
\node[rotate=-20,below left,transform canvas={yshift=-1.25cm,xshift=.25cm}] at (current page.north east) {
\includegraphics[width=.2\textwidth]{Stempel1}
};
\end{tikzpicture}

\section*{Trafo}

\centering

\begin{LTXexample}[style=gayaku,pos=t]
\begin{circuitikz}[]
\draw (0,0) node [transformer](T){}
      (T.A1) node[above] {A1}
      (T.A2) node[below] {A2}
      (T.B1) node[above] {B1} 
      (T.B2) node[below] {B2}
      (T.base) node{K};
\draw (T.A1) --++(-2,0);
\draw (T.A2) --++(-2,0);
\draw (T.B1) --++(2,0) to[D, v=${V_\gamma=0.7}$, i>_=](5,0);        
\draw (T.B2) --++(2,0) to[D, v=${V_\gamma=0.7}$ ,i>_=](5,-2.1);
\draw(T.A1) to[open,v<={$240V_{rms}$}](T.A2);
\draw(T.B2) to[open,v>=$12V_{rms}$](T.B1);
\draw ($(T.base)+(1mm,-2mm)$)  -- ++(0,-1.8);
\draw ($(T.base)+(-1mm,-2mm)$) -- ++(0,-1.8);
\end{circuitikz}
\end{LTXexample}

Belajar \LaTeX\textcopyright\ Adjie Gumarang Pujakelana: \url{http://menulislatex.blogspot.com/}

\end{document}
Contoh dokumen di atas saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015 


Related Posts Plugin for WordPress, Blogger...