以下の 2 つの関数間の領域を表示するコードを作成しています。これは良いものですが、さらに改善できると思います。
私の質問は、ガイドラインが交差しないように、x 目盛りラベル (x 軸上の数字) を少し左に移動する方法はありますか? また、y 目盛りラベル (少し下) でも同じことを行いますか? また、ガイドライン グリッド マトリックスのガイドラインの色と x および y 間隔を変更するにはどうすればよいですか?
\documentclass{article}
\usepackage{tikz,pgfplots}
\usepgfplotslibrary{fillbetween}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}
% Eixos
\begin{axis}[
grid,
axis x line=center,
axis y line=center,
xtick={-1,0,1},
ytick={-1,0,1},
xlabel={$x$},
ylabel={$y$},
xlabel style={below right},
ylabel style={above left},
xmin=-0.5,
xmax=1.1,
ymin=-0.5,
ymax=1.1]
% Função de cima contínua
\addplot[name path=f,domain=0:1,CCazul] {x};
% Função de baixo cintínua
\addplot[name path=g,domain=0:1,CCvermelho] {x^2};
% Função de cima pontilhada
\addplot[dashed, name path=fpont1,domain=-.5:0,CCazul] {x};
\addplot[dashed, name path=fpont2,domain=1:1.1,CCazul] {x};
% Função de baixo pontilhada
\addplot[dashed, name path=gpont1,domain=-.5:0,CCvermelho] {x^2};
\addplot[dashed, name path=gpont2,domain=1:1.1,CCvermelho] {x^2};
% Path
\path[name path=axis] (axis cs:0,0) -- (axis cs:1,0);
%Fill between
\addplot [
thick,
color=black,
fill=black,
fill opacity=0.05
]
fill between[
of=f and g,
soft clip={domain=0:1},
];
% Labels dos nós
\node [color=CCazul] at (axis cs: .55, .8) {$f(x) = x$};
\node [color=CCvermelho] at (axis cs: 0.9, .4) {$g(x) = x^2$};
\end{axis}
\end{tikzpicture}
\end{document}
ありがとう。
答え1
x 目盛りラベルのオフセットを指定できますxticklabel style={below left}
。y 軸についても同様です。
グリッド線の外観を変更するには、 を指定しますgrid style={...}
。
minor tick num
グリッド ラインの間隔を変更するには、または (間隔が両方で同じでない場合) をminor x tick num
指定します。minor y tick num
例 (これらの色の定義が省略されているため、をCCazul
にblue
、CCvermelho
を に変更しました):red
\documentclass[tikz]{standalone}
\usepackage{tikz,pgfplots}
\usepgfplotslibrary{fillbetween}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
grid=both,
grid style={red!15},
axis x line=center,
axis y line=center,
xtick={-1,0,1},
ytick={-1,0,1},
minor tick num=4,
xticklabel style={below left},
yticklabel style={below left},
xlabel={$x$},
ylabel={$y$},
xlabel style={below right},
ylabel style={above left},
xmin=-0.5,
xmax=1.1,
ymin=-0.5,
ymax=1.1]
\addplot[name path=f,domain=0:1,blue] {x};
\addplot[name path=g,domain=0:1,red] {x^2};
\addplot[dashed, name path=fpont1,domain=-.5:0,blue] {x};
\addplot[dashed, name path=fpont2,domain=1:1.1,blue] {x};
\addplot[dashed, name path=gpont1,domain=-.5:0,red] {x^2};
\addplot[dashed, name path=gpont2,domain=1:1.1,red] {x^2};
% Path
\path[name path=axis] (axis cs:0,0) -- (axis cs:1,0);
%Fill between
\addplot [
thick,
color=black,
fill=black,
fill opacity=0.05
]
fill between[
of=f and g,
soft clip={domain=0:1},
];
\node[blue] at (axis cs: .55, .8) {$f(x) = x$};
\node[red] at (axis cs: 0.9, .4) {$g(x) = x^2$};
\end{axis}
\end{tikzpicture}
\end{document}