重なり合っている 2 つの pgfplot を揃えるにはどうすればよいでしょうか?

重なり合っている 2 つの pgfplot を揃えるにはどうすればよいでしょうか?

私は pgfplots についてはまだ初心者です。

2 つのものをグラフ化して、並べてプロットしようとしています。しかし、サブ図を使用すると、プロット (および軸ラベル) が重なってしまいます。どうすればこれを修正できますか?

\documentclass{amsart} 
\usepackage{amsthm, amsfonts, amsmath, amssymb, mathrsfs, enumerate,graphicx} 
\usepackage{pgfplots} %For creating plots inside LaTeX itself
\usepackage{subcaption} %To create subfigures

\begin{document}
\begin{figure}
\centering
\begin{subfigure}{.45\linewidth}\centering
\begin{tikzpicture}
\begin{axis}[
                ymin=0,  xmin=0,
                %grid=major, % activate major grid lines
                xlabel=$\text{radius, }r$,
                ylabel=$\text{concentration, }c$,
                title={Steady state concentration},
                title style={yshift=1.5ex},
                axis on top, % descriptions over filled area
                legend pos=outer north east, % customize legend
        ]

        \addplot[smooth,blue,domain=0.5:2]
                {((1-0.00167)*ln(x)+0.00167*ln(0.5)-1*ln(2))/(ln(0.5)-ln(2))} ;
        \end{axis}
\end{tikzpicture}
\caption{Steady state species concentration profile. }
\end{subfigure}
\begin{subfigure}{.45\linewidth}\centering
\begin{tikzpicture}
\begin{axis}[
                ymin=0,  xmin=0,
                xlabel=$\text{radius, }r$,
                ylabel=$\text{chemical potential, }\mu^{c^*}$,
                title={Steady state chemical potential},
                title style={yshift=1.5ex},
                axis on top, % descriptions over filled area
                legend pos=outer north east, % customize legend
        ]

        \addplot[smooth,blue,domain=0.5:2]
                {8.31*310*ln(((1-.00167)*ln(x)+.00167*ln(0.5)-1*ln(2))/(ln(0.5)-ln(2))/.00167)} ;
        \end{axis}
\end{tikzpicture}
\caption{Steady state chemical potential profile}
\end{subfigure}
\caption{Illustration of analytical steady state solution.}
\end{figure}

\end{document}

答え1

問題は、\begin{tikzpicture}[scale=0.65]フォントも拡大縮小され、小さく見えることです。代わりに、オプションでプロットの幅を調整できます。widthのオプションを使用して、代わりにプロットの幅を調整できますpgfplots。これをすべてのプロットに適用するには、以下を追加します。

\usepackage{pgfplots} %For creating plots inside LaTeX itself
\pgfplotsset{width=2in} %%<-------------------- this

または、`axis options に次のように追加することで、特定のプロットのみに適用できます。

\begin{axis}[ 幅=2in、y最小=0、x最小=0、. .

これでフォントは同じサイズのままです。さらに、scale only axis,目盛りラベルを考慮せずに軸のみを拡大縮小することもできます。最後に、以下を追加することもできます。

ylabel style={overlay, anchor=north,},      %%% <-- this added

ラベルが y 軸に少し近くなるようにします。

\documentclass{amsart}
\usepackage{amsthm, amsfonts, amsmath, amssymb, mathrsfs, enumerate,graphicx}
\usepackage{pgfplots} %For creating plots inside LaTeX itself
\usepackage{subcaption} %To create subfigures
%\pgfplotsset{width=2in}

\begin{document}
\begin{figure}
\centering
\begin{subfigure}{.45\linewidth}\centering
\begin{tikzpicture}
\begin{axis}[
                width=\linewidth,  %%<----- here
                scale only axis,       %%% <-- this added
                ymin=0,  xmin=0,
                %grid=major, % activate major grid lines
                xlabel=$\text{radius, }r$,
                ylabel=$\text{concentration, }c$,
                ylabel style={overlay, anchor=north,},      %%% <-- this added
                title={Steady state concentration},
                title style={yshift=1.5ex},
                axis on top, % descriptions over filled area
                legend pos=outer north east, % customize legend
        ]

        \addplot[smooth,blue,domain=0.5:2]
                {((1-0.00167)*ln(x)+0.00167*ln(0.5)-1*ln(2))/(ln(0.5)-ln(2))} ;
        \end{axis}
\end{tikzpicture}
\caption{Steady state species concentration profile. }
\end{subfigure}%
\hfill
\begin{subfigure}{.45\linewidth}\centering
\begin{tikzpicture}
\begin{axis}[
                width=\linewidth,   %%<-------- here
                scale only axis,       %%% <-- this added
                ymin=0,  xmin=0,
                xlabel=$\text{radius, }r$,
                ylabel=$\text{chemical potential, }\mu^{c^*}$,
                ylabel style={overlay, anchor=north,},       %%% <-- this added
                title={Steady state chemical potential},
                title style={yshift=1.5ex},
                axis on top, % descriptions over filled area
                legend pos=outer north east, % customize legend
        ]

        \addplot[smooth,blue,domain=0.5:2]
                {8.31*310*ln(((1-.00167)*ln(x)+.00167*ln(0.5)-1*ln(2))/(ln(0.5)-ln(2))/.00167)} ;
        \end{axis}
\end{tikzpicture}
\caption{Steady state chemical potential profile}
\end{subfigure}
\caption{Illustration of analytical steady state solution.}
\end{figure}

\end{document}

ここに画像の説明を入力してください

答え2

両方に使用する

\begin{tikzpicture}[scale=0.65]
...

関連情報