파라메트릭 플롯을 만드는 방법은 무엇입니까?

파라메트릭 플롯을 만드는 방법은 무엇입니까?

에서 여러 매개변수를 만드는 방법이 궁금합니다 pgfplot. 코드에서 구를 그리는 데 매개변수로 x및 를 사용했습니다 . 플롯이 더 좋아 보이도록 , , 를 추가했을 때 :yradiuse 1cmx=2cmy=2cmz=2cm

\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}

불행하게도 내가 추가했을 때 view기능이 작동을 멈췄습니다. 문제를 해결하고 XY일반에만 그리드를 그리는 방법은 무엇입니까?

답변1

pgfplots설명서에 이런 경고가 있습니다!

3차원 축의 경우 pgfplots는 제공된 단위 벡터에서 뷰 방향을 계산합니다. z 버퍼 기능을 허용하려면(즉, 깊이를 결정하기 위해) 뷰 방향이 필요합니다.

241페이지, 버전 1.11의 섹션 4.10. 따라서 축 장치를 걸면 시야각이 변경됩니다.

아이디어를 확대하려는 경우 scale키를 사용할 수 있습니다.

\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}

여기에 이미지 설명을 입력하세요

관련 정보