Ich möchte eine Rotationsfläche zeichnen, die durch Drehen einer gegebenen Kurve entstehtaus Daten, d. h. ich habe Datenpunkte für zwei Funktionen f(y)
und g(y)
und ich möchte Folgendes tun (um ein minimales funktionierendes Beispiel zu erhalten, setze ich f(y)=sin(y)
und ein g(y)=cos(y)
, aber mein Hauptproblem besteht darin, diese Funktionen aus den Daten zu erhalten):
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}
[
view={30}{30}
]
\addplot3[surf,
domain=0:360,
samples=51,
y domain=0:180, %% the domain should be as given in data
z buffer=sort
]
({sin(y)*cos(x)}, %% want to replace sin(y) by f(y) from data
{sin(y)*sin(x)},
{cos(y)}); %%% want to replace cos(y) by g(y) from data
\end{axis}
\end{tikzpicture}
\end{document}
Beachten Sie, dass ich über ausreichend viele Datenpunkte für die Funktionen f und g verfüge, sodass für ein glatt aussehendes Diagramm keine zusätzliche Extrapolation erforderlich sein sollte.
Wie kann ich das am besten machen? Insbesondere weiß ich nicht, wie ich meine Daten als Funktionen importiere, die tikz/pgfplots in diesem Kontext verstehen können.