Zeichnen des Möbiusbandes und der Kleinschen Flasche

Zeichnen des Möbiusbandes und der Kleinschen Flasche

Ich habe das:

\begin{tikzpicture}
\begin{axis}[hide axis, unit vector ratio=1 1 1, view={-30}{45}]
\addplot3 [surf, domain=0:360, y domain=-1:1] (    {(10+y*cos(3*x/2)))*cos(x)}, {(10+y*cos(3*x/2)))*sin(x)}, {y*sin(3*x/2)});
\end{axis}
\end{tikzpicture}

Aber es funktioniert nicht. Ich kenne den Grund nicht. Ich möchte genau eines davon haben:

Bildbeschreibung hier eingeben

Außerdem würde ich gerne eine einfache Kleinsche Flasche zeichnen (ohne Gitter oder Schatten), aber in diesem Fall habe ich nichts... :(

Bildbeschreibung hier eingeben

Danke für die Unterstützung!!

Antwort1

Ein farbiges Möbiusband (mit xelatex):

\documentclass[pstricks]{standalone}
\usepackage{pst-3dplot}

\makeatletter
\define@key[psset]{pst-3dplot}{HueBegin}{% Between 0 and 1
 \def\PstHSB@HueBegin{#1}}
\define@key[psset]{pst-3dplot}{HueEnd}{% Between 0 and 1
 \def\PstHSB@HueEnd{#1}}
\define@boolkey[psset]{pst-3dplot}[Pst@]{HSB}[true]{}
% Default values
\psset[pst-3dplot]{HueBegin=0,HueEnd=1,HSB=false}
\psset{dimen=outer}

\def\parametricPlotThreeD@iii{%   without arrows (quickplot)
 \addto@pscode{%
   \psk@ThreeDplot@yPlotpoints {
     /Counter 0 def
     /t tMin def
     xyz \@nameuse{beginqp@\psplotstyle}
     /t t dt add def
     \psk@ThreeDplot@xPlotpoints\space 1 sub {
       xyz
       /Counter Counter 1 add def
       1 Counter eq { moveto currentpoint /OldY ED /OldX ED }
       {\ifPst@HSB % Other points than the first one
        /PointY exch def
        /PointX exch def
        Counter \psk@ThreeDplot@xPlotpoints\space div
        \PstHSB@HueEnd\space
        \PstHSB@HueBegin\space sub mul
        \PstHSB@HueBegin\space add
        1 1 sethsbcolor
        OldX OldY PointX PointY lineto lineto
        stroke
        PointX PointY moveto
    /OldX PointX def /OldY PointY def
      \else lineto \fi } ifelse
       /t t dt add def
     } repeat
     /t t dt sub def
     /u u du add def
   } repeat
 }%
 \@nameuse{endqp@\psplotstyle}%
}
\makeatother

\begin{document}
\psset{Beta=20}
\begin{pspicture}(-6,-3)(6,3)
\def\Radius{5 }
\parametricplotThreeD[plotstyle=line,xPlotpoints=100,
 yPlotpoints=100,drawStyle=xyLines,HSB](0,365)(-1,1){
 t 2 div cos u mul \Radius add t cos mul
 t 2 div cos u mul \Radius add t sin mul
 t 2 div sin u mul }
%\pstThreeDCoor[xMin=-1,yMin=-1,zMin=-1]
\parametricplotThreeD[plotstyle=line,xPlotpoints=100,yPlotpoints=1,
  linecolor=black,linewidth=1.5pt](488,-60){
 t 2 div cos \Radius add t cos mul
 t 2 div cos \Radius add t sin mul
 t 2 div sin }
\parametricplotThreeD[plotstyle=line,xPlotpoints=100,yPlotpoints=1,
  linecolor=black,linewidth=1.5pt](631,513){
 t 2 div cos \Radius add t cos mul
 t 2 div cos \Radius add t sin mul
 t 2 div sin }
\end{pspicture}
\end{document} 

Bildbeschreibung hier eingeben

Antwort2

Ihr Code funktioniert (meiner Meinung nach).

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}[declare function={moeb=3;phase=120;}]
\begin{axis}[hide axis, unit vector ratio=1 1 1, view={-30}{45}]
\addplot3 [surf, domain=0:360, y domain=-2:2,point
meta=rawy,shader=interp,samples=51,samples y=2] (   
 {(10+y*cos(moeb*x/2+phase)))*cos(x)}, {(10+y*cos(moeb*x/2+phase)))*sin(x)}, {y*sin(moeb*x/2+phase)});
\end{axis}
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

Sie können die Handlung ändern, indem Sie mit moeb, phaseund spielen point meta.

Antwort3

Ich versuche nicht, eine genaue Antwort zu geben, sondern weise darauf hin, dass Ihr Kommentar, dass gerastert und grau nicht wünschenswert ist, so dass wir Ihr Codebeispiel, wie es auf dieser Website zu finden ist, mit ein paar Anpassungen zurücknehmen und das bekommen, was ich für eine vernünftige Darstellung halteBildbeschreibung hier eingeben Das hilft vielen Menschen, die Natur eines Mobeius zu verstehen

Wenn Sie jedoch versuchen, das Raster und die Farbe zu entfernen, wie Sie es getan haben, erhalten Sie bestenfalls einen Punkt.

Ebenso gibt es auf dieser Site viele Antworten zu Flaschen, die Sie anpassen können, indem Sie die nicht gewünschten Funktionen entfernen. Durch das Entfernen der Gitter werden sie jedoch weniger verständlich.

So können Sie die Etiketten von diesem entfernenBildbeschreibung hier eingebenhttps://tex.stackexchange.com/a/77643/170109

Eine beschriftete Kleinsche Flasche mit TikZ oder pgfplots erstellen? pgfplots in Kombination mit gnuplot erfordert zusätzliches Semikolon pgfplots exp(-pow(deg(x),2) auf Domäne 0:2*pi

Hinweis für diejenigen, die sich fragen, wo sie ein Party-Stück zum Servieren von Wein bekommen können, schauen Sie sich den Hersteller an vonder größte der Welt

Bildbeschreibung hier eingeben(http://www.kleinbottle.com/weinflasche_kleinbottle.html)

verwandte Informationen