![¿Cómo hacer un gráfico paramétrico?](https://rvso.com/image/305915/%C2%BFC%C3%B3mo%20hacer%20un%20gr%C3%A1fico%20param%C3%A9trico%3F.png)
Me pregunto cómo crear múltiples parámetros en pgfplot
. En el código utilicé x
y y
como parámetros para dibujar la esfera, con radiuse 1cm
. Cuando agregué x=2cm
, y=2cm
, z=2cm
para que la trama se viera mejor:
\documentclass{book}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{center}
\begin{tikzpicture}[scale=1,font=\tiny]
\begin{axis}[
axis x line=middle,
axis y line=middle,
axis z line=middle,
colormap/jet,
samples=40,
view={130}{30},
domain=-4:4,
y domain=-4:4,
restrict z to domain=-4:4,
grid=both,
xlabel={$x$},
ylabel={$y$},
zlabel={$z$},
xmax=2,
ymax=2,
zmax=2,
xmin=-2,
ymin=-2,
zmin=-2,
xtick={-10,...,10},
ytick={-10,...,10},
ztick={-10,...,10},
x=2cm,
y=2cm,
z=2cm,
every axis x label/.style={
at={(ticklabel* cs:1)},
anchor=west,},
every axis y label/.style={
at={(ticklabel* cs:1)},
anchor=south,},
every axis z label/.style={
at={(ticklabel* cs:1)},
anchor=west,}
]
\addplot3 [
samples=30,
domain=0:2*pi,
y domain=0:2*pi,
]
({cos(y*180/pi)*cos(x*180/pi)},
{cos(y*180/pi)*sin(x*180/pi)}, {sin(y*180/pi)});
\end{axis}
\end{tikzpicture}
\end{center}
\end{document}
Lamentablemente, cuando los agregué, view
la función dejó de funcionar. ¿Cómo solucionar el problema y dibujar la cuadrícula solo en XY
plano?
Respuesta1
pgfplots
¡El manual tiene esta advertencia!
Para ejes tridimensionales, pgfplots calcula una dirección de vista a partir de los vectores unitarios proporcionados. La dirección de la vista es necesaria para permitir la función de zona de influencia z (es decir, para decidir sobre las profundidades)
en la página 241, sección 4.10 de la versión 1.11. Por lo tanto, cuando cuelgue las unidades de los ejes, cambiará el ángulo de visión.
Si la idea es agrandar, puedes usar scale
clave.
\documentclass{book}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{center}
\begin{tikzpicture}[scale=1,font=\tiny]
\begin{axis}[
%x post scale=2,
% y post scale=2,
% z post scale=2,
scale=2,
axis x line=middle,
axis y line=middle,
axis z line=middle,
colormap/jet,
samples=40,
view={130}{30},
domain=-4:4,
y domain=-4:4,
restrict z to domain=-4:4,
grid=both,
xlabel={$x$},
ylabel={$y$},
zlabel={$z$},
xmax=2,
ymax=2,
zmax=2,
xmin=-2,
ymin=-2,
zmin=-2,
xtick={-10,...,10},
ytick={-10,...,10},
ztick={-10,...,10},
every axis x label/.style={
at={(ticklabel* cs:1)},
anchor=west,},
every axis y label/.style={
at={(ticklabel* cs:1)},
anchor=south,},
every axis z label/.style={
at={(ticklabel* cs:1)},
anchor=west,}
]
\addplot3 [
samples=30,
domain=0:2*pi,
y domain=0:2*pi,
]
({cos(y*180/pi)*cos(x*180/pi)},
{cos(y*180/pi)*sin(x*180/pi)}, {sin(y*180/pi)});
\end{axis}
\end{tikzpicture}
\end{center}
\end{document}