Skip to content

Instantly share code, notes, and snippets.

@yarakos95
Last active July 19, 2022 06:04
Show Gist options
  • Save yarakos95/21ee1c655f600501ffbef22a5b8c8adf to your computer and use it in GitHub Desktop.
Save yarakos95/21ee1c655f600501ffbef22a5b8c8adf to your computer and use it in GitHub Desktop.
TikZ で記号を描く

TikZ で記号を描く

TikZ を利用して増減表に利用できそうな矢印や符号を作成してみた。

矢印

TikZ と arrows.meta ライブラリを利用して、以下のように 3 種類の矢印を作成した。

  • 斜め方向に直線の矢印
    • \diagonalArrowNE
    • \diagonalArrowSE
  • 丸く直角に曲がった矢印
    • \roundedArrowRU
    • \roundedArrowRD
    • \roundedArrowUR
    • \roundedArrowDR
  • 緩やかに曲がった矢印
    • \bentArrowRU
    • \bentArrowRD
    • \bentArrowUR
    • \bentArrowDR
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\tikzset{
  arrowStyle/.style={ -Straight Barb[] , semithick },
  roundedArrow/.style={ arrowStyle , scale=0.4 , rounded corners=2pt },
  straightArrow/.style={ arrowStyle , scale=0.35 },
  bentArrow/.style={ arrowStyle , scale=0.4 }
}
% Diagonal straight arrow
\newcommand{\diagonalArrowNE}{\tikz[ baseline=2.5pt ] \draw[ straightArrow ] (0,0) to (1,1);}
\newcommand{\diagonalArrowSE}{\tikz[ baseline=2.5pt ] \draw[ straightArrow ] (0,1) to (1,0);}
% Rounded arrow
\newcommand{\roundedArrowRU}{\tikz[ baseline=3pt ] \draw[ roundedArrow ] (0,0) .. controls(1,0) .. (1,1);}
\newcommand{\roundedArrowRD}{\tikz[ baseline=3pt ] \draw[ roundedArrow ] (0,1) .. controls(1,1) .. (1,0);}
\newcommand{\roundedArrowUR}{\tikz[ baseline=3pt ] \draw[ roundedArrow ] (0,0) .. controls(0,1) .. (1,1);}
\newcommand{\roundedArrowDR}{\tikz[ baseline=3pt ] \draw[ roundedArrow ] (0,1) .. controls(0,0) .. (1,0);}
% Bent arrow
\newcommand{\bentArrowRU}{\tikz[ baseline=2pt ] \draw[ bentArrow ] (0,0) to [bend right] (1.3,0.8);}
\newcommand{\bentArrowDR}{\tikz[ baseline=2pt ] \draw[ bentArrow ] (0,0.8) to [bend right] (1.3,0);}
\newcommand{\bentArrowUR}{\tikz[ baseline=2pt ] \draw[ bentArrow ] (0,0) to [bend left] (1.3,0.8);}
\newcommand{\bentArrowRD}{\tikz[ baseline=2pt ] \draw[ bentArrow ] (0,0.8) to [bend left] (1.3,0);}

arrow

符号

数式環境内では +- を利用することが出来るが、数式環境出ない場合は利用できない。TikZ で描いてしまおう。

\usepackage{tikz}
\tikzset{
  dscPosNeg/.style={ scale=0.1, semithick }
}
\newcommand{\dscPos}{\tikz[ baseline=-2.5pt ] \draw[ dscPosNeg ] (-1,0) to (1,0) (0,-1) to (0,1);}
\newcommand{\dscNeg}{\tikz[ baseline=-2.5pt ] \draw[ dscPosNeg ] (-1,0) to (1,0);}

sign

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment