我一直在尝试在 LaTeX 中绘制以下函数以及第一象限中的一条 45 度线
$a_{t}^{i}(k_{t}^{i})=
\begin{cases}
log(1+ck_{t}^{i}) & k_{t}^{i} < \widehat{k} \\
B \frac{(k_{t}^{i})^{1-m}-1}{1-m} & k_{t}^{i} \geq \widehat{k}
\end{cases}$
具有数值的$c$
,$B$
和,$\widehat{k}$
但pgfplots
不能将 log 识别为函数。
第二个主要问题是我不想在轴上使用数字,因为该函数仅在没有给定值的参数中定义,并且希望$\widehat{k}$
在图表上将其标记为其他几个点之一。有办法实现这一点吗?
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ axis lines = left, xlabel = $k_{t}^{i}$, ylabel = {$a_{t}^{i}$}, ]
\addplot[ domain=0:6.12, samples=100, color=red, ] {x};
\addplot [ domain=0:2, samples=100, color=blue, ] {ln(1+2*x)};
\addplot [ domain=2:6.12, samples=100, color=blue, ] {10*((x-0.7)^(-1.5)-1)/(-1.5)};
\end{axis}
\end{tikzpicture}
\end{document}
答案1
一般来说,本网站要求您提供一个完整的代码示例,以最低的复杂度展示您的问题,请参阅这里。
我在这里展示如何手动 放这勾选标签。
\documentclass[border=2mm]{standalone}
%\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines = left,
xlabel = $k_{t}^{i}$,
ylabel = {$a_{t}^{i}$},
xtick = {2,4},
xticklabels = {{Text at 2},{Text at 4}},
ytick = {2,6},
yticklabels = {{Text at 2},{Text at 6}},
]
\addplot[
domain=0:6.12,
samples=100,
color=red
] {x};
\addplot[
domain=0:2,
samples=100,
color=blue
] {ln(1+2*x)};
\addplot[
domain=2:6.12,
samples=100,
color=blue
] {10*((x-0.7)^(-1.5)-1)/(-1.5)};
\end{axis}
\end{tikzpicture}
\end{document}