绘制分段函数

绘制分段函数

我一直在尝试在 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}

在此处输入图片描述

相关内容