関数の漸近線を削除する

関数の漸近線を削除する

次のようにtikzを使用して、関数y=(0.05*0.4+0.1*2*x)/(0.05+0.1*2)およびx=-0.1/(2*30*(y - 0.1))+yを描画しようとしています。

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmin=0,xmax=1,ymin=0,ymax=1, samples=1000, xlabel={$c$}, ylabel={$s$}]
 \addplot[blue, ultra thick] (x,{(0.05*0.4+0.1*2*x)/(0.05+0.1*2)});
 \addplot[red,  ultra thick] ({-0.1/(2*30*(x - 0.1))+x},x);
\end{axis}
\end{tikzpicture}
\end{document}

そして結果は

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

回答のおかげで2つの数学関数のTikz画像関数を正しく描画できました。ただし、トレースまたは削除する必要がある漸近線 (関数のグラフの一部ではない) が存在することに気付きました (赤)。

答え1

これは漸近線ではなく、不連続性があるため 2 つのプロット間の直線です。 によって定義されるグラフはx=-0.1/(2*30*(y - 0.1))+yy=0.1 で不連続性を持ちます。

次のように対処できます:

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmin=0,xmax=1,ymin=0,ymax=1, samples=1000, xlabel={$c$}, ylabel={$s$}]
 \addplot[blue, ultra thick] (x,{(0.05*0.4+0.1*2*x)/(0.05+0.1*2)});
 \addplot[red,  ultra thick, domain=0:0.0999] ({-0.1/(2*30*(x - 0.1))+x},x);
 \addplot[red,  ultra thick, domain=0.1001:1] ({-0.1/(2*30*(x - 0.1))+x},x);
\end{axis}
\end{tikzpicture}
\end{document}

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

など2*30を置き換えることでコードを簡素化することもできます。60

編集:この質問は重複していないようです2つの数学関数のTikz画像、同じユーザーが 4 時間前に質問しました。

関連情報