とりあえず参考になるurlの列挙だけ.

公式のマニュアル

基本的な使い方

\documentclass{article}

\usepackage{tikz,pgfplots,pgfplotstable} % 基本となる3つのパッケージ

\pgfplotsset{compat = newest}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[
            xmin = 0, xmax = 30,
            ymin = -1.5, ymax = 2.0,
            xtick distance = 2.5,
            ytick distance = 0.5,
            grid = both,
            minor tick num = 1,
            major grid style = {lightgray},
            minor grid style = {lightgray!25},
            width = \textwidth,
            height = 0.5\textwidth,
            xlabel = {$x$},
            ylabel = {$y$},
            legend cell align = {left},
        ]
            \addplot[
                domain = 0:30,
                samples = 200,
                smooth,
                thick,
                blue,
            ] {exp(-x/10)*( cos(deg(x)) + sin(deg(x))/10 )};

            \addplot[
                smooth,
                thin,
                red,
                dashed
            ] file[skip first] {cosine.dat};
           \legend{Plot from expression, Plot from file}
        \end{axis}
    \end{tikzpicture}
\end{document}

https://bombrary.github.io/blog/posts/tikz-note01/

https://mathlandscape.com/latex-color/ https://konoyonohana.blog.fc2.com/blog-entry-97.html

https://latexdraw.com/plot-a-function-and-data-in-latex/

legend

  • https://tex.stackexchange.com/questions/14506/pgfplots-prevent-single-plot-from-being-listed-in-legend

フォントの大きさを変える.

https://tex.stackexchange.com/questions/107057/adjusting-font-size-with-tikz-picture

p in pを作る.

scope環境を利用して作ることができる.

https://tex.stackexchange.com/questions/124453/connecting-subplots

Legendを消す

https://tex.stackexchange.com/questions/14506/pgfplots-prevent-single-plot-from-being-listed-in-legend

https://tex.stackexchange.com/questions/6114/hide-tick-numbers-in-a-tikz-pgf-axis-environment yticklabels

ファイルのパスを追加する

プロジェクトで複数のディレクトリを利用している場合,standaloneクラスの文書とメインの文書でpathが異なる場合がある.この場合,\pgfplotssetコマンドでファイルのパスを追加できる.

    \pgfplotsset{
        table/search path={plots/data},
    }

複数の図を入れる

https://tex.stackexchange.com/questions/457844/align-two-tikz-pictures-vertically-in-standalone-environment

色を変える

defaultだと基本的な色しか使えないが,中にはyellowなど蛍光色で見にくい色がある.グラフの見やすさなどの観点で違う色を使いたい場合,基本的な方法はxcolorパッケージを利用する方法.

# 基本の19色
\usepackage{xcolor}

# dvipsnamesオプション付きで読み込むと追加の色を使える
\usepackage[dvipsnames]{xcolor}

https://mathlandscape.com/latex-color/ https://konoyonohana.blog.fc2.com/blog-entry-97.html

フォントの大きさを変える.

https://tex.stackexchange.com/questions/107057/adjusting-font-size-with-tikz-picture

p in pを作る.

scope環境を利用して作ることができる.

https://tex.stackexchange.com/questions/124453/connecting-subplots

矢印

https://latexdraw.com/exploring-tikz-arrows/

https://tex.stackexchange.com/questions/8007/line-with-arrowhead-in-pgfplot

関数をプロットする

https://tex.stackexchange.com/questions/384232/pgfplot-function-plotting http://abenori.blogspot.com/2015/08/pgfplots.html

legendの場所を変更する.

自分の手で設定したい場合.0.5や0.1は図表全体を0~1で表した時の場所を表している.マイナスをつけると図の外を指定していることになる.

legend style={at={(0.5,-0.1)},anchor=north}

参考文献

全体的なことに関して

基本的なこと1

gnuplotとの連携

pgfplotsマニュアル

tikz+minipage%

compileをスピードアップする・グラフの作成の外部化1:tikzexternalize

https://tex.stackexchange.com/questions/45/how-to-speed-up-latex-compilation-with-several-tikz-pictures <!– Whenever you’d use a tikzpicture environment or a \tikz macro, give your picture a suggestive name, say riemann_sum, put the TikZ code in a single standalone document (with some boilerplate such that it matches the style of your main document. For example we don’t want Computer Modern in our pictures while the main document is typeset with Times or a 10pt/12pt font size clash) called riemann_sum_sag.tex and use \includepdf{riemann_sum_sag} instead. The goal is to not have a single picture being compiled when you run make without having modified a *_sag.tex file. If this is not possible because you need to \ref something inside a picture, then so be it, but try to keep that to a minimum and instead choose good captions or something.

You’ll also notice that there is a rule for files matching *_input.tex. This is for splitting the project into multiple files which is of course always a good idea when doing large projects. The rule detects whether such a file has been modified, and if it has triggers a recompilation of the document. LaTeX’s \includeonly feature might be a good companion to this. –>

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize[prefix=_tikz/]
\tikzexternalize
\begin{document}
\begin{tikzpicture}
  \draw (0,0) -- (1,0) -- (1,1) -- (0,1) -- cycle;
\end{tikzpicture}
\end{document}

compileをスピードアップする・グラフの作成の外部化2::standaloneクラス

グラフの外部化3::externalize

https://tikz.dev/library-external

解決方法がわかっていないこと

  • subcaptionやminipageなどの分割を行う環境との相性がよくない.

    % % 注意 !! ここの二つのグラフはそのままlualatex –jobnameコマンドを使ってもうまく図が生成されない... % % 全体的にonecolumngrid+minipageとpgfplotsの組み合わせがよくない気がする. % % 一旦minipageをコメントアウトしてからlualatexを実行するとまあ悪くない図が得られる.

  • semilogyaxisとaxis環境で作られる左側の余白が異なる.

    これは別に気にしなければそのままで良いと思う.

    
    

    図表のサイズ(軸ラベルを含まない四角く囲まれた部分)は同じだが,左側のラベルを含む余白の大きさが異なる.semilogyaxisの方が余白が大きく,普通に並べると揃わない.とりあえずの解決策としては後からpdfを編集するか,standaloneクラス+tikzオプションを利用する.

    システマチックにできるのはstandaloneクラスを使う方法.これはグラフの幅はある程度同じになるように指定しておかないといけない.しかしstandaloneクラスで図を作ると余白はなくなるものの引用の番号がおかしくなってしまうという新しい問題が発生する... これを解決するにはstandaloneクラスの文書に直接メインファイルのbblファイルをインポートすることで一応対応できる.

    \input{main.bbl}
    

    対処療法だけどとりあえずはこれで...

    追記::biblatexではなくてnatbibを利用する場合,standaloneの方でnatbibのstyleを指定しないとまずい? (revtexはnatbibなので...)

    \usepackage[numbers]{natbib}
    本文
    \input{main.bbl}
    
  • 図表のサイズ指定

    APSのマニュアルによると横幅は8.6cmにするべき? これがおそらく2カラム組の場合の1カラム幅に対応しているのだろう.これもstandalone環境だとうまくいっているように見える.

tikzをつかったフローチャート作成

https://molina.jp/blog/tikz%E3%81%A6%E3%83%95%E3%83%AD%E3%83%BC%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88%E3%82%92%E6%9B%B8%E3%81%8F/

参考文献

https://tex.stackexchange.com/questions/480910/pgfplots-how-to-align-plot-width-to-same-width-as-legend

https://tex.stackexchange.com/questions/301594/scale-only-axis-only-for-one-axis

https://tex.stackexchange.com/questions/528695/pgfplots-how-to-get-values-of-width-and-height-of-axis-rectangle

https://tex.stackexchange.com/questions/192424/pgfplots-single-legend-in-a-group-plot

https://tex.stackexchange.com/questions/131446/common-label-for-a-groupplot

https://tex.stackexchange.com/questions/169433/pgfplots-relative-node-positioning-in-axis-cs

https://tex.stackexchange.com/questions/136836/dashed-axis-lines