nodeのオプションのうちのshape
を指定することでnodeの形を変更できるわけですが,
主に使いそうなものをまとめておきたいと思います.
- 四角:
rectangle
- 角が丸くなった四角:
rounded rectangle
- 角が丸くなった四角:
- 円形:
circle
- 楕円:
ellipse
- 星形:
star
- 円筒:
cylinder
- 雲形:
cloud
以下はたぶん共通するオプション...
draw
:これを書かないと図形(の枠)が描画されないaspect
:縦と横の比fill
:blue!20という様に指定し,図形内部の塗りつぶしの色を指定node distance
:cmやptで他のノードとの間隔を指定height
width
rotate
書いてみた
スクリプト
\documentclass[a4j,,11pt,dvipdfmx]{ujreport} \usepackage[utf8]{inputenc} \usepackage{float} \usepackage{tikz} \usepackage{pgf} \usepackage{pgfplots} \usetikzlibrary{arrows, chains, positioning, quotes, shapes}%shapes.geometric, shapes.misc} \usetikzlibrary{shapes.gates.logic.US} \begin{document} \begin{figure}[H] \centering \begin{tikzpicture} \tikzset{Rectangle/.style={rectangle, draw, text centered, text width=5cm}}; \tikzset{Ellipse/.style={ellipse, draw, aspect=0.8, text centered, text width=3cm}}; \tikzset{Cloud/.style={cloud, draw,aspect=2.0, text centered,text width=3cm,minimum height=10pt}}; \tikzset{Cylinder/.style={cylinder, draw,aspect=0.3,shape border rotate=90, text centered,text width=3cm}}; \node[Cloud](a){雲形}; \node[Cloud,cloud puffs=20,right of=a,node distance = 5cm](b) at (0,0) {雲形(角増加)}; \node[Cloud,cloud puff arc=0.8,right of=b,node distance = 5cm](c) {角ばった雲形}; \node[Rectangle,below=1.5 of a](d){長方形}; \node[draw,rounded rectangle,right of=d,node distance = 5cm](e) {丸ばった長方形}; \node[Cylinder,right of=e,node distance = 5cm](f){円筒}; \node[Ellipse,below=1.5 of d](g){楕円}; \node[draw,regular polygon,regular polygon sides=5,right of=g,node distance = 5cm](h) {多角形}; \node[draw,diamond,right of=h,node distance = 5cm](i) {ひし形}; \node[draw,star,star points=5,below=1.5 of g](j) {星}; \node[draw,star,star points=7,star point ratio=0.8,right of=j,node distance = 5cm](k) {星}; \node[draw,star,start chain=10,right of=k,node distance = 5cm](l) {星}; \node[draw=none,fill=none,below=1.5 of j](m) {枠なし}; \node[draw,cross out,right of=m,node distance = 5cm](n) {交差}; \node[draw,strike out,right of=n,node distance = 5cm](o) {スラッシュ}; \node[draw,circle,below=1.5 of m](p) {円形}; \node[draw,circle split,right of=p,node distance = 5cm](q) {円形 \nodepart{lower} 2分割}; \node[draw,forbidden sign,text width=4em, text centered,right of=q,node distance = 5cm](r){円形}; \node[draw,arrow box,below=1.5 of p](s) {矢印ボックス}; \node[draw,dart,right of=s,node distance = 5cm](t) {矢}; \node[draw,double arrow,right of=t,node distance = 5cm](u) {両矢印}; \node[draw,kite,below=1.5 of s](v) {凧}; \node[draw,rectangle split,right of=v,node distance = 5cm](w) {分割された \nodepart{second} 長方形}; \node[draw,pin,right of=w,node distance = 5cm](x) {ピン付}; \end{tikzpicture} \end{figure} \begin{figure}[H] \centering \begin{tikzpicture} \node[draw,and gate US](a){AND}; \node[draw,or gate US,right of=a,node distance = 5cm](b) at (0,0) {OR}; \node[draw,not gate US,right of=b,node distance = 5cm](c) {NOT}; \node[draw,xor gate US,right of=c,node distance = 5cm](d){XOR}; \node[draw,nand gate US,below=1.5 of a](e){NAND}; \node[draw,nor gate US,right of=e,node distance = 5cm](f){NOR}; \node[draw,xnor gate US,right of=f,node distance = 5cm](g){XNOR}; \end{tikzpicture} \end{figure} \begin{figure}[H] \centering \begin{tikzpicture} \node (x) at (0, 1) {$x$}; \node (y) at (0, 0) {$y$}; \node[draw,and gate US,logic gate inputs=nn,right of=x,node distance = 5cm] (and){AND}; \draw (x) -- (and.input 1); \draw (y) -- (and.input 2); \end{tikzpicture} \end{figure} \begin{figure}[H] \centering \begin{tikzpicture} \node (x) at (0, 1) {$x$}; \node (y) at (0, 0) {$y$}; \node (z) at (0, -1) {$z$}; \node[draw,and gate US,logic gate inputs={normal,normal,normal},right of=y,node distance = 5cm] (and){AND}; \draw (x) -- (and.input 1); \draw (y) -- (and.input 2); \draw (z) -- (and.input 3); \end{tikzpicture} \end{figure} \end{document}
出力結果
以上のスクリプトをコンパイルしてPDF出力すると以下のような図がページに出力されます. 示している図はPDFのページから切り取ったものです.
参考
- Node shapes | TikZ example
- nodes - Comprehensive list of TikZ style options? - TeX - LaTeX Stack Exchange
- nodes - Cylinder shading with PGF/TikZ - TeX - LaTeX Stack Exchange
- TikZ でノードを相対位置で配置する話 - マクロツイーター
- circuitikz - How to draw logic gates in tikz - TeX - LaTeX Stack Exchange
- nodes - TikZ rectangle split parts with fixed height - TeX - LaTeX Stack Exchange
他Tikz関連