This is documentation for Mathematica 4, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)

 Documentation /  Mathematica /  Das Mathematica Buch /  Eine praktische Einführung in Mathematica /  Grafik und Ton /

Kontur- und DichtediagrammeKonvertierung zwischen Grafikarten

1.9.7 Dreidimensionale Oberflächendiagramme

Grundlegende 3D-Zeichenfunktion

Dies erstellt ein dreidimensionales Diagramm der Funktion .

In[1]:= Plot3D[Sin[x y], {x, 0, 3}, {y, 0, 3}]

Out[1]=

Es gibt viele Optionen für dreidimensionale Diagramme in Mathematica. Einige werden in diesem Abschnitt, weitere in Abschnitt 2.9 beschrieben. Die erste Gruppe von Optionen für dreidimensionale Diagramme ist weitgehend analog zu denen für den zweidimensionalen Fall.

Einige Optionen für Plot3D. Die erste Gruppe kann auch in Show verwendet werden.

Dies zeichnet das Diagramm auf der vorigen Zeile erneut mit geänderten Optionen. Mit dieser Einstellung für PlotRange wird nur der Teil der Oberfläche im Bereich gezeigt.

In[2]:= Show[%, PlotRange -> {-0.5, 0.5}]

Out[2]=

Wenn Sie das ursprüngliche Diagramm erstellen, können Sie mehr Stützstellen wählen. Sie werden dies tun müssen, um gute Abbildungen von Funktionen zu erhalten, die stark variieren.

In[3]:= Plot3D[10 Sin[x + Sin[y]], {x, -10, 10}, {y, -10, 10},
PlotPoints -> 40]

Out[3]=

Hier ist dasselbe Diagramm mit Beschriftungen für die Achsen und Gitternetze auf jeder Seitenfläche.

In[4]:= Show[%, AxesLabel -> {"Zeit", "Tiefe", "Wert"},
FaceGrids -> All]

Out[4]=

Die wohl wichtigste Entscheidung beim Zeichnen einer dreidimensionalen Oberfläche ist die, von wo aus Sie die Oberfläche betrachten wollen. Mit der Option ViewPoint für Plot3D und Show können Sie den Punkt x, y, z im Raum angeben, von dem aus Sie eine Oberfläche betrachten wollen. Die Einzelheiten, wie die Koordinaten dieses Punktes definiert sind, werden in Abschnitt 2.9.10 behandelt. In vielen Versionen von Mathematica ist es möglich, dreidimensionale Augpunkte interaktiv zu wählen und dann die anzugebenden Koordinaten für die Option ViewPoint zu erhalten.

Hier ist eine Oberfläche, die vom Vorgabe-Augpunkt {1.3, -2.4, 2} gesehen wird. Dieser Augpunkt wird als „generisch" gewählt, so daß visuell verwirrende Überschneidungen zwischen verschiedenen Teilen Ihres Objekts unwahrscheinlich sind.

In[5]:= Plot3D[Sin[x y], {x, 0, 3}, {y, 0, 3}]

Out[5]=

Dies zeichnet das Bild erneut, wobei der Augpunkt direkt davor liegt. Beachten Sie den perspektivischen Effekt, der die Rückseite des Kastens sehr viel kleiner als die Vorderseite erscheinen läßt.

In[6]:= Show[%, ViewPoint -> {0, -2, 0}]

Out[6]=

Typische Wahlen für die Option ViewPoint

Das menschliche visuelle System versteht komplizierte mathematische Oberflächen nicht besonders gut. Deshalb müssen Sie Bilder erzeugen, die soviele Anhaltspunkte wie möglich über die Form der Oberfläche enthalten.

Augpunkte, die etwas über der Oberfläche liegen, eignen sich gewöhnlich besonders gut. Im allgemeinen ist es günstig, den Augpunkt dicht genug zur Oberfläche zu halten, so daß sich ein gewisser perspektivischer Effekt ergibt. Ein explizit um die Oberfläche gezeichneter Rahmen hilft beim Erkennen der Orientierung der Oberfläche.

Hier ist ein Diagramm mit den Voreinstellungen für Optionen zur Oberflächendarstellung.

In[7]:= g = Plot3D[Exp[-(x^2+y^2)], {x, -2, 2}, {y, -2, 2}]

Out[7]=

Dies zeigt die Oberfläche ohne das gezeichnete Gitternetz. Es ist gewöhnlich sehr viel schwieriger, die Form der Oberfläche zu erkennen, wenn das Gitternetz nicht vorhanden ist.

In[8]:= Show[g, Mesh -> False]

Out[8]=

Dies zeigt die Oberfläche ohne Schattierung. Einige Displays können eventuell keine Schattierung darstellen.

In[9]:= Show[g, Shading -> False]

Out[9]=

Das Einfügen von Schattierung und eines Gitternetzes ist gewöhnlich von großem Wert für das Begreifen der Form einer Oberfläche. Auf einigen Vektorgrafik-Ausgabegeräten werden Sie eventuell keine Schattierung erhalten können. Sie sollten sich auch klar machen, daß die Darstellung der Oberfläche auf Ihrem Ausgabegerät eine lange Zeit benötigt, wenn Schattierung vorhanden ist.

Um dreidimensionaler Grafik ein besonders realistisches Element zu verleihen, färbt Mathematica in Voreinstellung dreidimensionale Oberflächen mit simulierter Beleuchtung. Im Vorgabefall geht Mathematica davon aus, daß es drei Lichtquellen gibt, die vom rechten oberen Bildteil auf das Objekt scheinen. Abschnitt 2.9.12 beschreibt, wie Sie andere Lichtquellen aufstellen und wie Sie die reflektierenden Eigenschaften eines Objektes spezifizieren können.

Während simulierte Beleuchtung in den meisten Fällen, insbesondere bei Farb-Ausgabegeräten, von großem Wert ist, kann sie mitunter auch verwirren. Wenn Sie die Option Lighting -> False festlegen, dann wird Mathematica simulierte Beleuchtung nicht einsetzen, sondern stattdessen alle Oberflächen mit Graustufen schattieren, die durch Ihre Höhe bestimmt sind.

Plot3D färbt gewöhnlich Oberflächen mit simulierter Beleuchtung.

In[10]:= Plot3D[Sin[x y], {x, 0, 3}, {y, 0, 3}]

Out[10]=

Lighting -> False schaltet simulierte Beleuchtung ab und schattiert stattdessen Oberflächen mit Graustufen, die durch die Höhe bestimmt werden.

In[11]:= Show[%, Lighting -> False]

Out[11]=

Bei Lighting -> False schattiert Mathematica Oberflächen entsprechend der Höhe. Sie können Mathematica auch explizit anweisen, wie jedes Oberflächenelement zu schattieren ist. Damit können Sie im Grunde Schattierung zur Darstellung einer zusätzlichen Koordinate für jeden Oberflächenpunkt verwenden.

Spezifizieren von Schattierungs-Funktionen für Oberflächen

Dies zeigt eine Oberfläche, deren Höhe durch die Funktion Sin[x y] bestimmt ist, aber deren Schattierung durch GrayLevel[x/3] festgelegt ist.

In[12]:= Plot3D[{Sin[x y], GrayLevel[x/3]},
{x, 0, 3}, {y, 0, 3}]

Out[12]=

Kontur- und DichtediagrammeKonvertierung zwischen Grafikarten