
Revisé el segundo tutorial en la documentación de tikz y conocí el uso de \x dentro de declaraciones foreach para iterar algunos procesos. Sin embargo, acabo de descubrir que \x puede aparecer sin una declaración foreach. Adapté algún código deotro hilopara simplificarlo mayormente y terminé con lo siguiente;
\documentclass[tikz,border=10]{standalone}
\begin{document}
\begin{tikzpicture}[scale=3,very thick]
\draw[samples=500] plot (canvas polar
cs:angle=\x r,radius={50-10*sin(10*\x r)}); %50 and 10 in 50 - 10 ... control the sharpness of each curve, 10 in sin(x) controls number of curves
\end{tikzpicture}
\end{document}
que produce esta imagen:
Sin embargo, no entiendo qué está haciendo \x en este código ya que no hay nada como una declaración \foreach... in {1,...,5) que determina el rango de valores que \x puede tomar . Entonces, ¿cómo contribuye \x a generar esta línea ondulada y cómo funciona en general en una declaración como esta? Además, ¿por qué va seguido de una r? ¿La r representa un número que multiplica el valor que toma \x?
Respuesta1
¡Un ejemplo muy interesante! No sólo quiero arrojarte cientos de páginas de manual, sino tambiénpgfmanual esmuy informativo.
Allí encuentras:
Trazar una función
Cuando traza una función, las coordenadas de los datos del trazado se pueden calcular evaluando una expresión matemática. Dado que pgf viene con un motor matemático, puede especificar esta expresión y luego hacer que TikZ produzca las coordenadas deseadas automáticamente. Dado que este caso es bastante común al trazar una función, la sintaxis es sencilla: siguiendo el comando de trazado y sus opciones locales, usted proporciona directamente una(expresión coordinada). Parece una coordenada normal, pero dentro puedes usar una macro especial, que está \x
por defecto, pero esto se puede cambiar usando la opción variable. El(expresión coordinada)Luego se evalúa para diferentes valores de \x
y se trazan las coordenadas resultantes.
[...]
/tikz/domain=<start>:<end>
(sin valor predeterminado, inicialmente -5:5)
Establece el dominio del que se toman las muestras
Sintaxis de expresiones matemáticas: operadores
Xr
: Convierte x a grados (se supone que x está en radianes).
(Básicamente lo mismo que *180/3.14
- mi comentario)
Básicamente, este fragmento de código extrae 500 muestras del rango de -5:5 y toma estos valores como ángulos de coordenadas polares en radianes. Luego calcula el radio 50-10*sin(10*<angle converted to degrees>)
para cada muestra. A través de estos puntos, traza una línea.