
Tenho dois gráficos 3D, um em coordenadas polares e outro paramétrico. Gostaria de ter no mesmo terreno também os contornos. Estas são as parcelas atuais:
\begin{tikzpicture}
\begin{axis}[view={130}{30}]
\addplot3 [surf,z buffer=sort,samples=30,domain=0:360,y domain=0:5, data cs=polar] (x,y,y^2);
\addplot3 [contour gnuplot={contour dir=y,draw color=red,labels=false},y filter/.expression={5},] {x^2};
\addplot3 [contour gnuplot={contour dir=x,draw color=blue,labels=false},x filter/.expression={5},] {y^2};
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[view={130}{30}]
\addplot3[surf,domain=-1:1,y domain=0:360,z buffer=sort] ({cosh(x)*cos(y)}, {cosh(x)*sin(y)}, {sinh(x)});
\end{axis}
\end{tikzpicture}
Minha pergunta agora é: como eu poderia traçar automaticamente os contornos de ambos os gráficos, uma vez que eles são definidos por meio de coordenadas polares ou parâmetros? Os contornos x
e y
do parabolóide são apenas codificados.
Estou procurando (se houver) uma maneira de criar automaticamente os contornos, sem me importar com as coordenadas que está usando. Mais ou menos como o exemplo na página 156aqui
Eu também consegui algo assim
adicionando a seguinte linha:
\addplot3 [contour gnuplot={contour dir=z,draw color=black,labels=false},z filter/.expression={25},] {y^2+x^2};
mas a solução não parece ideal, pois preciso conhecer a seção manualmente. Existe uma maneira de conseguir isso?
Editar 1: talvez eu deva esclarecer minha necessidade. Suponha que eu tenha uma função f
que desejo representar graficamente. Posso usar sua fórmula cartesiana, alguma parametrização ou usar coordenadas polares. De qualquer forma, o mesmo resultado deve ser alcançado. No primeiro caso, encontrar contornos com o auxílio de contour gnuplot
é bastante fácil e basta inserir a função original.
Se eu tiver f
uma forma paramétrica ou usar coordenadas polares, já preciso conhecer as equações de contorno para plotá-las. Existe uma maneira de generalizar o problema de que, para qualquer dado f
escrito em qualquer forma, eu seja capaz de traçar os contornos?
Basicamente gostaria de ter a projeção da função f
no eixo e traçar seu contorno.