Da Ihre Form vertikale Tangenten aufweist, kann sie nicht als geschrieben z=f(x,y)
und splot <function>
nicht verwendet werden. Sie können jedoch Daten aus einer Datei zeichnen, siehe beispielsweise eine Lösung zum Plotten von Cubes: http://www.gnuplotting.org/plotting-cubes/
Um gnuplot zum Erzeugen der Daten selbst zu verwenden, können Sie die Pseudo-Datei "++" und Modifikatoren verwenden. So stellen Sie einen Zylinder dar:
splot [-1:1][-1:1][0:1] '++' u (cos(pi*$1)):(sin(pi*$1)):($2) w lines
Zum Zeichnen der oberen Oberfläche können Sie denselben Trick verwenden:
replot '++' u ($2*cos(pi*$1)):($2*sin(pi*$1)):1 w lines
Für Ihre genaue Form sind geringfügige Änderungen erforderlich. Ich empfehle, dass Sie Funktionen für die X- und Y-Koordinatenberechnungen definieren, die sie verwenden GPVAL_X_MIN
und zusammenstellen können. zur Normalisierung der Variablen $1
und $2
im relevanten Bereich unabhängig von den Darstellungsbereichen.