Cómo dibujar este gráfico de función con la operación de trazado (TIKZ, Bucle)
Aug 20 2020
Deseo dibujar un gráfico de función, la fórmula analítica de la función es:

Puedo usar el siguiente código para dibujar una imagen de una función específica
Pero quiero ser conciso, cómo definir una letra n,
Dibuja la imagen de la función correspondiente con el cambio de n
Creo que debería realizarse por bucle, pero no sé cómo hacerlo.
¿Lo que hay que hacer?
\documentclass{book}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[->,>=stealth] (-4,0) -- (4,0) node[below] {$ x $};
\draw[->,>=stealth] (0,-0.5) -- (0,4) node[right] {$ y $};
\fill (0,0) circle ( 0 ) node[ below left ] { $ O $ } ;
\draw[ domain= -3 : 3 ,samples= 300 ] plot ( \x, {
abs(\x)
});
\draw[ domain= -3 : 3 ,samples= 300 ] plot ( \x, {
abs(\x) + abs((\x) + 1)
});
\draw[ domain= -3 : 3 ,samples= 300 ] plot ( \x, {
abs(\x) + abs((\x) + 1) + abs((\x) + 2)
});
\end{tikzpicture}
\end{document}
Respuestas
5 ZhiyuanLck Aug 21 2020 at 10:34
Usar math
biblioteca.
\documentclass[tikz, border=1cm]{standalone}
\usetikzlibrary{math}
\begin{document}
\begin{tikzpicture}
\pgfset{fpu=true, fpu/output format=fixed}
\tikzmath{
function f(\x, \n) {
real \s;
\s = 0;
for \i in {0,...,\n}{
\s = \s + abs(\x + \i);
};
return \s;
};
}
\pgfset{fpu=false}
\draw[->,>=stealth] (-4,0) -- (4,0) node[below] {$x$};
\draw[->,>=stealth] (0,-0.5) -- (0,15) node[right] {$y$};
\fill (0,0) circle (2pt) node[below left] {$o$};
\foreach \i in {1,...,4} {
\draw [domain=-3:1, samples=300] plot (\x, {f(\x, \i)});
}
\end{tikzpicture}
\end{document}
