绘制函数 + 仅标记 x 轴上的单位

绘制函数 + 仅标记 x 轴上的单位

这听起来像是一个愚蠢的问题,但我找不到解决方案。

我正在尝试让它工作但我不知道为什么不行......

这是我的代码:

\documentclass{scrartcl}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tkz-fct}
\begin{document}
\begin{tikzpicture}[]
    \tkzInit[xmin=0, ymin=0, xstep=0.25, ystep = 1, xmax = 2.25, ymax = 10]
    \tkzGrid(0,0)(2.25,10)
    \tkzDrawX[right, label = \begin{minipage}{\textwidth}
                Temps de \\ parcours \\ (en h)
            \end{minipage}]
    \tkzDrawY[above right, label = \begin{minipage}{\textwidth}
        Distance \\ parcourue\\ (en km)
    \end{minipage}]
    \tkzLabelY
    \tkzLabelX[xstep = 1]
    
    \tkzFct[very thick, color=blue, domain = 0:0.25]{12*x}
    \tkzFct[very thick, color=blue, domain = 0.25:0.75]{3}
    \tkzFct[very thick, color=blue, domain = 0.75:1.85]{84/13 * x - 24/13}
    
    \tkzFct[very thick, dotted, color=red, domain = 0:2]{5*x}
\end{tikzpicture}
\end{document}

该函数的绘制方式与我想象的不一样...我添加了一张我得到的图片。 在此处输入图片描述

此外,我希望 x 轴上只有 0、1 和 2,没有其他数字。我该怎么做?

谢谢 !

答案1

好的,我找到了!

对于我的 x 轴,我这样做:\tkzInit[xmin=0, ymin=0, xstep=1, ystep = 1, xmax = 2, ymax = 10] \tkzGrid(0,0)(2.25,10) \tkzGridsub,subxstep=0.25,subystep=1(2.25,10)

第一个网格位于单位上,子网格位于 x 轴的 0.25 步上。可能有更好的方法可以做到这一点,但它有效!

至于我的函数,我认为我的 0.25 xstep 是一个问题,导致它们绘制不正确,因为只要我将它更改为 xstep = 1,它就起作用了。

这是我的解决方案:

    \documentclass{scrartcl}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tkz-fct}

\begin{document}  
\begin{tikzpicture}[xscale = 4]
    \tkzInit[xmin=0, ymin=0, xstep=1, ystep = 1, xmax = 2, ymax = 10]
    \tkzGrid(0,0)(2.25,10)
    \tkzGrid[sub,subxstep=0.25,subystep=1](0,0)(2.25,10)
    \tkzDrawX[right, label = \begin{minipage}{\textwidth}
                Temps de \\ parcours \\ (en h)
            \end{minipage}]
    \tkzDrawY[above right, label = \begin{minipage}{\textwidth}
        Distance \\ parcourue\\ (en km)
    \end{minipage}]
    \tkzLabelY
    \tkzLabelX[xstep = 1]
    
    \tkzFct[very thick, color=blue, domain = 0:0.25]{12*x}
    \tkzFct[very thick, color=blue, domain = 0.25:0.75]{3}
    \tkzFct[very thick, color=blue, domain = 0.75:1.85]{6.46156 * x - 1.84617}
    
    \tkzFct[very thick, dotted, color=red, domain = 0:2]{5*x}
\end{tikzpicture}
\end{document}

最终结果: 在此处输入图片描述

相关内容