@c -----------------------------------------------------------------------------
@c File        : Plotting.de.texi
@c License     : GNU General Public License (GPL)
@c Language    : German
@c Original    : Plotting.texi revision 03.10.2011
@c Translation : Dr. Dieter Kaiser
@c Date        : 23.10.2010
@c Revision    : 16.10.2011
@c 
@c This file is part of Maxima -- GPL CAS based on DOE-MACSYMA
@c -----------------------------------------------------------------------------

@menu
* Einf@"uhrung in die grafische Darstellung::
* Grafikformate::
* Funktionen und Variablen f@"ur die grafische Darstellung::
* Grafikoptionen::
* Gnuplot Optionen::
* Gnuplot_pipes Formatfunktionen::
@end menu

@c -----------------------------------------------------------------------------
@node Einf@"uhrung in die grafische Darstellung, Grafikformate, Grafische Darstellung, Grafische Darstellung
@section Einf@"uhrung in die grafische Darstellung
@c -----------------------------------------------------------------------------

@c Maxima uses an external plotting package to make the plots (see the section 
@c on Plotting formats). The plotting functions calculate a set of points and 
@c pass them to the plotting package together with a set of commands. That 
@c information can be passed to the external program either through a pipe or by
@c calling the program with the name of a file where the data has been saved. 
@c The data file is given the name @code{maxout.interface}, where 
@c @code{interface} is the name of the plotting interface being used (gnuplot, 
@c xmaxima, mgnuplot or gnuplot_pipes).

Maxima verwendet externe Grafikprogramme, um grafische Darstellungen auszugeben.
Die Grafikfunktionen berechnen die Punkte der Grafik und senden diese mit einem 
Satz an Kommandos an das externe Grafikprogramm.  Die Daten werden als
Datenstrom @"uber eine Pipe oder als eine Datei an das Grafikprogramm 
@"ubergeben.  Die Datei erh@"alt den Namen @code{maxout.interface}, wobei 
@code{interface} der Name des externen Grafikprogramms ist.  Die m@"oglichen 
Dateiendungen sind: @code{gnuplot}, @code{xmaxima}, @code{mgnuplot},
@code{gnuplot_pipes} oder @code{geomview}.

@c The @code{maxout.interface} file, in the cases when it is used, is created 
@c in the directory specified by the system variable @var{maxima_tempdir}. That 
@c location can be changed; by assigning to that variable a string that 
@c represents a valid directory where Maxima can create new files.

Die Datei @code{maxout.interface} wird in dem Verzeichnis gespeichert, das
durch die Systemvariable @mref{maxima_tempdir} bezeichnet wird. 

@c After a plot has been created, the file @code{maxout.interface} can be
@c executed again with the appropriate external program. If a Maxima plotting
@c command fails to show anything, that file can be inspected to look for
@c possible sources of problems.

Die Datei @code{maxout.interface} kann wiederholt an das Grafikprogramm
@"ubergeben werden.  Gibt Maxima keine Grafik aus, kann diese Datei gepr@"uft 
werden, um m@"ogliche Fehler festzustellen.

Das Paket @code{draw} ist eine Alternative, um Funktionsgraphen und eine
Vielzahl anderer Graphen zu erstellen.  Das Paket @code{draw} hat einen
gr@"o@ss{}eren Umfang an Funktionalit@"aten und ist flexibler, wenn der Graph 
besondere Formatierungen enthalten soll.  Einige Grafikoptionen sind in beiden 
beiden Grafikpaketen vorhanden, k@"onnen sich aber in der Syntax unterscheiden.
Mit dem Kommando @code{? opt}, wobei @code{opt} eine Grafikoption ist, wird
m@"oglicherweise nur die Dokumentation der Standard-Grafikroutinen angezeigt.
Um auch die entsprechende Grafikoption des Paketes @code{draw} zu sehen, kann
@code{?? opt} auf der Kommandozeile eingegeben werden.  Siehe @ref{draw}.

@c -----------------------------------------------------------------------------
@node Grafikformate, Funktionen und Variablen f@"ur die grafische Darstellung, Einf@"uhrung in die grafische Darstellung, Grafische Darstellung
@section Grafikformate
@c -----------------------------------------------------------------------------

@c There are currently two external plotting programs that Maxima use: Gnuplot
@c and Xmaxima. There are various different formats for those programs, which 
@c can be selected with the option @code{plot_format} (see the Plotting Options 
@c section).
@c The plotting formats are the following:

Maxima verwendet f@"ur die Ausgabe von Grafiken die Grafikprogramme Gnuplot,
Xmaxima oder Geomview.  Mit der Grafikoption @code{plot_format} k@"onnen verschiedene
Grafikformate f@"ur diese Programme ausgew@"ahlt werden.  Die Grafikformate 
sind:

@c Used to launch the external program gnuplot, which must be installed in your
@c system. All plotting commands and data are saved into the file 
@c @code{maxout.gnuplot}.

@itemize @bullet
@item @strong{gnuplot}

Startet das externe Programm Gnuplot.  Gnuplot muss installiert sein.  Die
Grafikkommandos und Daten werden in die Datei @code{maxout.gnuplot} gespeichert.

@c This format is not available in Windows platforms. It is similar to the 
@c @code{gnuplot} format except that the commands are sent to gnuplot through a 
@c pipe, while the data are saved into the file @code{maxout.gnuplot_pipes}. A 
@c single gnuplot process is kept open and subsequent plot commands will be sent
@c to the same process, replacing previous plots, unless the gnuplot pipe is 
@c closed with the function @code{gnuplot_close()}. When this format is used, 
@c the function @code{gnuplot_replot} can be used to modify a plot that has 
@c already displayed on the screen (see @code{gnuplot_replot}).

@item @strong{gnuplot_pipes} (Standardwert)

Es ist @"ahnlich dem Format
@code{gnuplot}, mit der Ausnahme, dass die Grafikkommandos als Datenstrom @"uber
eine Pipe an Gnuplot gesendet werden, w@"ahrend die Daten in der Datei 
@code{maxout.gnuplot_pipes} gespeichert werden.  Es wird nur eine Instanz von
Gnuplot gestartet.  Aufeinander folgende Grafikkommandos werden an ein bereits
ge@"offnetes Gnuplot-Programm gesendet.  Gnuplot wird mit der Funktion
@mref{gnuplot_close} geschlossen.  In diesem Grafikformat kann die Funktion 
@mref{gnuplot_replot} genutzt werden, um eine Grafik zu modifizieren, die 
bereits auf dem Bildschirm ausgegeben wurde.

@c This format should only be used to plot to the screen; for plotting to files 
@c it is better to use the @code{gnuplot} format.

Dieses Grafikformat sollte nur f@"ur die Ausgabe von Grafiken auf den Bildschirm
verwendet werden.  F@"ur die Ausgabe von Grafiken in eine Datei ist das 
Grafikformat @code{gnuplot} besser geeignet.

@c Mgnuplot is a Tk-based wrapper around gnuplot. It is included in the Maxima 
@c distribution. Mgnuplot offers a rudimentary GUI for gnuplot, but has fewer 
@c overall features than the plain gnuplot interface. Mgnuplot requires an 
@c external gnuplot installation and, in Unix systems, the Tcl/Tk system.

@item @strong{mgnuplot}

Mgnuplot ist eine Tcl/Tk-Anwendung, die Gnuplot f@"ur die Ausgabe von Grafiken 
nutzt.  Die Anwendung ist in der Maxima-Distribution enthalten.  Mgnuplot bietet 
eine rudiment@"are GUI f@"ur Gnuplot, hat aber weniger F@"ahigkeiten als 
Gnuplot.  Mgnuplot ben@"otigt die Installation von Gnuplot und Tcl/Tk.

@c Xmaxima is a Tcl/Tk graphical interface for Maxima that can also be used
@c to display plots created when Maxima is run from the console or from other
@c graphical interfaces. To use this format, the xmaxima program, which is
@c distributed together with Maxima, should be installed. If Maxima is
@c being run from xmaxima itself, this format will make the plot functions
@c send the data and commands through the same socket used for the
@c communication between Maxima and Xmaxima. When used from the console
@c or from other interface, the commands and data will be saved in the file
@c @code{maxout.xmaxima}, and the xmaxima program will be launched with the
@c name of the location of that file as argument.

@item @strong{xmaxima}

Xmaxima ist eine auf Tcl/Tk basierende grafische Nutzeroberfl@"ache, die von
der Maxima-Konsole gestartet werden kann.  Um dieses Grafikformat zu nutzen,
muss Xmaxima installiert sein, das in der Distribution von Maxima enthalten ist.
Wird Maxima aus Xmaxima gestartet, werden die Grafikkommandos und Daten @"uber
denselben Socket gesendet, der auch f@"ur die Kommunikation zwischen Xmaxima und
Maxima ge@"offnet wird.  Wird das Grafikformat von einer Konsole oder einer
anderen Nutzeroberfl@"ache gestartet, werden die Grafikkommandos und Daten in
die Datei @code{maxout.xmaxima} gespeichert.  Diese Datei wird an Xmaxima f@"ur
die Ausgabe der Grafik @"ubergeben.

@c In previous versions this format used to be called @code{openmath}.

In fr@"uheren Versionen wurde dieses Grafikformat @code{openmath} genannt.


@c @item
@c @strong{geomview}
@c
@c Geomview, a Motif based interactive 3D viewing program for Unix, can
@c also be used to display plots created by Maxima.  To use this format,
@c the geomview program must be installed.


@item
@strong{geomview}

Geomview ist ein - auf Motif basierendes - interaktives 3D Programm f@"ur Unix,
das auch verwendet werden kann, um Plots von Maxima anzuzeigen.  Um dieses
Format zu verwenden muss das Programm geomview installiert sein.


@end itemize

@c -----------------------------------------------------------------------------
@node Funktionen und Variablen f@"ur die grafische Darstellung, Grafikoptionen, Grafikformate, Grafische Darstellung
@section Funktionen und Variablen f@"ur die grafische Darstellung
@c -----------------------------------------------------------------------------

@c --- 03.11.2010 DK -----------------------------------------------------------
@anchor{contour_plot}
@deffn {Funktion} contour_plot (@var{expr}, @var{x_range}, @var{y_range}, @var{options}, @dots{})

@c It plots the contours (curves of equal value) of @var{expr} over the 
@c region @var{x_range} by @var{y_range}. Any additional arguments are treated 
@c the same as in @code{plot3d}.

Zeichnet einen Konturgraphen (die Isolinien einer Funktion) von @var{expr} im 
Bereich @var{x_range} und @var{y_range} mit den Optionen @var{options}. 
@var{expr} ist ein Ausdruck oder der Name einer Funktion @code{f(x,y)} mit zwei
Argumenten.  Alle weiteren Argumente entsprechen denen der Funktion 
@mrefdot{plot3d}

@c This function only works when the plot format is either @code{gnuplot} or 
@c @code{gnuplot_pipes}. The additional package @code{implicit_plot} can also 
@c be used to plot contours and it works for any format. See 
@c @code{implicit_plot}.

Die Funktion steht nur f@"ur die Grafikformate @code{gnuplot} und 
@code{gnuplot_pipes} zur Verf@"ugung.  Das Paket @code{implicit_plot} enth@"alt
die Funktion @mref{implicit_plot} mit der f@"ur alle Grafikformate Konturgraphen
erstellt werden k@"onnen.

Beispiele:

@c ===beg===
@c contour_plot(x^2 + y^2, [x, -4, 4], [y, -4, 4])$
@c ===end===
@example
(%i1) contour_plot(x^2 + y^2, [x, -4, 4], [y, -4, 4])$
@end example
@ifnotinfo
@image{@value{figuresfolder}/plotting1,8cm}
@end ifnotinfo

@c You can add any options accepted by @code{plot3d}; for instance, the option 
@c @code{legend} with a value of false, to remove the legend. Gnuplot chooses, 
@c by default, 3 contours to show. to increase the number of levels, it is 
@c necessary to specify a custom gnuplot preamble:

Es kann jede Option genutzt werden, die von der Funktion @code{plot3d} 
akzeptiert wird.  Standardm@"a@ss{}ig zeichnet Gnuplot den Graphen mit 3 
Isolinien.  Die Anzahl der Isolinien kann mit der Gnuplot-Option 
@mref{gnuplot_preamble} erh@"oht werden.  In diesem Beispiel werden 12 Isolinien
gezeichnet und die Legende ist entfernt.

@c ===beg===
@c contour_plot (u^3 + v^2, [u, -4, 4], [v, -4, 4], 
@c               [legend,false],
@c               [gnuplot_preamble, "set cntrparam levels 12"])$
@c ===end===
@example
@group
(%i1) contour_plot (u^3 + v^2, [u, -4, 4], [v, -4, 4],
              [legend,false],
              [gnuplot_preamble, "set cntrparam levels 12"])$
@end group
@end example
@ifnotinfo
@image{@value{figuresfolder}/plotting2,8cm}
@end ifnotinfo
@end deffn

@c --- 04.11.2010 DK -----------------------------------------------------------
@anchor{get_plot_option}
@deffn {Funktion} get_plot_option (@var{keyword}, @var{index})

@c Returns a value of the option with name @var{keyword}, stored in the
@c global variable @code{plot_options}. A value of 1 for the index will
@c return the keyword itself; a value of 2 turn returns the first parameter
@c following the keyword, and so on.

Gibt die Werte der Parameter der Option mit dem Namen @var{keyword} zur@"uck. 
Die Optionen und ihre Parameter sind in der Variablen @code{plot_options} 
gespeichert.  Hat @var{index} den Wert 1 wird der Name der Option @var{keyword}
zur@"uckgeben.  Der Wert 2 f@"ur @var{index} gibt den Wert des ersten Parameters
zur@"uck, und so weiter.

@c See also @code{plot_options}, @code{set_plot_option} and the section on
@c Plotting Options.

Siehe auch @mrefcomma{plot_options} @mref{set_plot_option} und das Kapitel
@nrefdot{Grafikoptionen}

Beispiel:

@c ===beg===
@c get_plot_option(color,1);
@c get_plot_option(color,2);
@c get_plot_option(color,3);
@c ===end===
@example
(%i1) get_plot_option(color,1);
(%o1)                         color
(%i2) get_plot_option(color,2);
(%o2)                         blue
(%i3) get_plot_option(color,3);
(%o3)                          red
@end example
@end deffn

@c --- 05.11.2010 DK -----------------------------------------------------------
@anchor{implicit_plot}
@deffn  {Funktion} implicit_plot (@var{expr}, @var{x_range}, @var{y_range})
@deffnx {Funktion} implicit_plot ([@var{expr_1}, @dots{}, @var{expr_n}], @var{x_range}, @var{y_range})

@c Displays a plot of one or more expressions in implicit
@c form. @var{expr} is the expression to be plotted, @var{x_range} the
@c range of the horizontal axis and @var{y_range} the range of vertical
@c axis. @code{implicit_plot} respects global setting for the gnuplot
@c driver set by the @var{set_plot_option} function. Options can also be passed 
@c to @code{implicit_plot} function as optional arguments.

Zeichnet den Graphen eines oder mehrerer Ausdr@"ucke, die implizit gegeben sind.
@var{expr} ist der Ausdruck der gezeichnet werden soll, @var{x_range} ist der
Wertebereich der x-Achse und @var{y_range} der Wertebereich der y-Achse.  Die
Funktion @code{implicit_plot} beachtet die Werte der Parameter der 
Grafikoptionen, die in der Systemvariablen @code{plot_options} enthalten sind.
Grafikoptionen k@"onnen auch als Argumente @"ubergeben werden.

@c @code{implicit_plot} works by tracking sign changes on the area
@c given by @var{x_range} and @var{y_range} and can fail for complicated
@c expressions.

Der Algorithmus von @code{implicit_plot} stellt Vorzeichenwechsel der Funktion
in den Bereichen @var{x_range} und @var{y_range} fest.  F@"ur komplizierte
Fl@"achen kann der Algorithmus versagen.

@c @code{load("implicit_plot")} loads this function.

Die Funktion wird mit dem Kommando @code{load("implicit_plot")} geladen.

Beispiel:

@c ===beg===
@c load("implicit_plot")$
@c implicit_plot (x^2 = y^3 - 3*y + 1, [x, -4, 4], [y, -4, 4])$
@c ===end===
@example
(%i1) load("implicit_plot")$
(%i2) implicit_plot (x^2 = y^3 - 3*y + 1, [x, -4, 4], [y, -4, 4])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting3,8cm}
@end ifnotinfo
@end deffn

@c --- 04.11.2010 DK -----------------------------------------------------------
@anchor{make_transform}
@deffn {Funktion} make_transform ([@var{var1}, @var{var2}, @var{var3}], @var{fx}, @var{fy}, @var{fz})

@c Returns a function suitable to be used in the option @code{transform_xy}
@c of plot3d. The three variables @var{var1}, @var{var2}, @var{var3} are
@c three dummy variable names, which represent the 3 variables given by the
@c plot3d command (first the two independent variables and then the
@c function that depends on those two variables). The three functions
@c @var{fx}, @var{fy}, @var{fz} must depend only on those 3 variables, and
@c will give the corresponding x, y and z coordinates that should be
@c plotted. There are two transformations defined by default:
@c @code{polar_to_xy} and @code{spherical_to_xyz}; see the documentation
@c for those two transformations.

Gibt eine Funktion zur@"uck, die als Parameter f@"ur die Grafikoption 
@code{transform_xy} geeignet ist.  Die zwei Argumente @var{var1} und @var{var2} 
repr@"asentieren die zwei unabh@"angigen Variablen der Funktion @code{plot3d}.  
Das dritte Argument @var{var3} ist die Funktion, die von den zwei Variablen 
abh@"angt.  Die drei Funktionen @var{fx}, @var{fy} und @var{fz} m@"ussen von 
den drei Argumenten @var{var1}, @var{var2} und @var{var3} abh@"angen und die 
Argumente der Funktion @code{plot3d} in kartesische Koordinaten f@"ur die 
Ausgabe des Graphen transformieren. 

Die Transformationen @mref{polar_to_xy} f@"ur die Transformation von 
Polarkoordinaten und @mref{spherical_to_xyz} f@"ur die Transformation von 
Kugelkoordinaten in kartesische Koordinaten sind bereits definiert.

Beispiel:

Definition der Transformation von Zylinderkoordinaten nach kartesischen 
Koordinaten.  Die Definition ist identisch mit der f@"ur @mrefdot{polar_to_xy}
Der Graph zeigt einen Kegel.

@c TODO: GRAPH DES BEISPIELS HINZUFUEGEN

@c ===beg===
@c cylinder_to_xy:make_transform([r,phi,z],r*cos(phi),
@c                                         r*sin(phi),z)$
@c plot3d(-r,[r,0,3],[phi,0,2*%pi],
@c                   [transform_xy, cylinder_to_xy])$
@c ===end===
@example
(%i1) cylinder_to_xy:make_transform([r,phi,z],r*cos(phi),
                                              r*sin(phi),z)$
(%i2) plot3d(-r,[r,0,3],[phi,0,2*%pi],
                        [transform_xy, cylinder_to_xy])$
@end example
@end deffn

@c --- 03.11.2010 DK -----------------------------------------------------------
@anchor{polar_to_xy}
@deffn {Systemfunktion} polar_to_xy

@c It can be given as value for the @code{transform_xy} option of
@c plot3d. Its effect will be to interpret the two independent variables in
@c plot3d as the distance from the z axis and the azimuthal angle (polar
@c coordinates), and transform them into x and y coordinates.

Kann als Parameter der Grafikoption @code{transform_xy} der Funktion 
@code{plot3d} @"ubergeben werden.  Der Parameter @code{polar_to_xy} bewirkt, 
dass die zwei unabh@"angigen Variablen der Funktion @code{plot3d} von 
Polarkoordinaten in kartesische Koordinaten transformiert werden.

F@"ur ein Beispiele siehe @mrefdot{make_transform}
@end deffn

@c --- 05.11.2010 DK -----------------------------------------------------------
@anchor{plot2d}
@deffn  {Funktion} plot2d (@var{plot}, @var{x_range}, @dots{}, @var{options}, @dots{})
@deffnx {Funktion} plot2d ([@var{plot_1}, @dots{}, @var{plot_n}], @dots{}, @var{options}, @dots{})
@deffnx {Funktion} plot2d ([@var{plot_1}, @dots{}, @var{plot_n}], @var{x_range}, @dots{}, @var{options}, @dots{})

@c Where @var{plot}, @var{plot_1}, ..., @var{plot_n} can be either
@c expressions, function names or a list with
@c the any of the forms: @code{[discrete, [@var{x1}, ..., @var{xn}],
@c [@var{y1}, ..., @var{yn}]]}, @code{[discrete, [[@var{x1}, @var{y1}],
@c ..., [@var{xn}, ..., @var{yn}]]} or @code{[parametric, @var{x_expr},
@c @var{y_expr}, @var{t_range}]}.

@var{plot}, @var{plot_1}, @dots{}, @var{plot_n} sind Ausdr@"ucke, Namen von 
Funktionen oder Listen, mit denen diskrete Punkte oder Funktionen in einer
parametrischen Darstellung angegeben werden.  Diskrete Punkte k@"onnen als
@code{[discrete, [@var{x1}, ..., @var{xn}], [@var{y1}, ..., @var{yn}]]} oder als 
@code{[discrete, [[@var{x1}, @var{y1}], ..., [@var{xn}, ..., @var{yn}]]}
angegeben werden.  Eine parametrische Darstellung hat die Form
@code{[parametric, @var{x_expr}, @var{y_expr}, @var{t_range}]}.

@c Displays a plot of one or more expressions as a function of one
@c variable or parameter.
@c @code{plot2d} displays one or several plots in two dimensions. When
@c expressions or function name are used to define the plots,
@c they should all depend on only one variable @var{var} and the use of
@c @var{x_range} will be mandatory, to provide the name of the variable and
@c its minimum and maximum values; the syntax for @var{x_range} is:
@c @code{[@var{variable}, @var{min}, @var{max}]}.

Die Funktion @code{plot2d} zeichnet einen zweidimensionalen Graphen einer oder 
mehrerer Ausdr@"ucke als Funktion einer Variablen oder eines Parameters.  Mit 
der Grafikoption @var{x_range} wird der Name der unabh@"angigen Variablen und 
deren Bereich angegeben.  Die Syntax der Grafikoption @var{x_range} ist: 
@code{[@var{variable}, @var{min}, @var{max}]}.

@c A plot can also be defined in the discrete or parametric forms. The
@c discrete form is used to plot a set of points with given coordinates. A
@c discrete plot is defined by a list starting with the keyword
@c @var{discrete}, followed by one or two lists of values. If two lists are
@c given, they must have the same length; the first list will be
@c interpreted as the x coordinates of the points to be plotted and the
@c second list as the y coordinates. If only one list is given after the
@c @var{discrete} keyword, each element on the list should also be a list
@c with two values that correspond to the x and y coordinates of a point.

Ein diskreter Graph wird durch eine Liste definiert, die mit dem
Schl@"usselwort @w{@var{disrecte}} beginnt.  Es folgen ein oder zwei Listen mit 
den Werten.  Werden zwei Listen @"ubergeben, m@"ussen diese dieselbe L@"ange 
haben.  Die Daten der ersten Listen werden als die x-Koordinaten der Punkte und 
die der zweiten als die y-Koordinaten der Punkte interpretiert.  Wird nur eine 
Liste @"ubergeben, sind die Elemente Listen mit je zwei Elementen, die die x- 
und y-Koordinaten der Punkte repr@"asentieren.

@c A parametric plot is defined by a list starting with the keyword
@c @var{parametric}, followed by two expressions or function names and a
@c range for the parameter. The range for the parameter must be a list with
@c the name of the parameter followed by its minimum and maximum values:
@c @code{[@var{param}, @var{min}, @var{max}]}. The plot will show the path
@c traced out by the point with coordinates given by the two expressions or
@c functions, as @var{param} increases from @var{min} to @var{max}.

Ein parametrischer Graph wird durch eine Liste definiert, die mit dem
Schl@"usselwort @var{parametric} beginnt.  Es folgen zwei Ausdr@"ucke oder 
Namen von Funktionen und ein Parameter.  Der Bereich f@"ur den Parameter muss 
eine Liste sein, die den Namen des Parameters, seinen gr@"o@ss{}ten und seinen 
kleinsten Wert enth@"alt: @code{[@var{parameter}, @var{min}, @var{max}]}.  Der 
Graph ist der Weg f@"ur die zwei Ausdr@"ucke oder Namen von Funktionen, wenn 
der Parameter @var{parameter} von @var{min} nach @var{max} zunimmt.

@c A range for the vertical axis is an optional argument with the form:
@c @code{[y, @var{min}, @var{max}]} (the keyword @var{y} is always used for
@c the vertical axis). If that option is used, the plot will show that
@c exact vertical range, independently of the values reached by the plot.
@c If the vertical range is not specified, it will be set up according to
@c the minimum and maximum values of the second coordinate of the plot
@c points.

Als optionales Argument kann ein Wertebereich f@"ur die vertikale 
Koordinatenachse mit der Grafikoption @code{y} angegeben werden: 
@code{[y, @var{min}, @var{max}]}.  Die vertikale Achse wird immer mit dem 
Schl@"usselwort @code{y} bezeichnet.  Wird kein Wertebereich @code{y} angegeben, 
wird dieser durch den gr@"o@ss{}ten und kleinsten @code{y}-Wert des zu 
zeichnenden Graphen festgelegt.

@c All other options should also be lists, starting with a keyword and
@c followed by one or more values. See @code{plot_options}.

Auch alle anderen Grafikoptionen werden als Listen angegeben, die mit einem 
Schl@"usselwort beginnen, auf das die Parameter der Grafikoption folgen.  Siehe 
@mrefdot{plot_options}

@c If there are several plots to be plotted, a legend will be
@c written to identiy each of the expressions. The labels that should be
@c used in that legend can be given with the option @var{legend}. If that
@c option is not used, Maxima will create labels from the expressions or
@c function names.

Werden mehrere Graphen gezeichnet, wird eine Legende hinzugef@"ugt, die die 
einzelnen Graphen unterscheidet.  Mit der Grafikoption @var{legend} k@"onnen die
Bezeichnungen f@"ur die Legende festgelegt werden.  Wird diese Option nicht 
genutzt, generiert Maxima die Bezeichnungen der Legende aus den Ausdr@"ucken 
oder Namen der Funktionen, die als Argument @"ubergeben wurden.

@c See also the section about Plotting Options.

Siehe auch das Kapitel @mrefdot{Grafikoptionen}

Beispiele:

@c Plot of a common function:

Graph einer einfachen Funktion.

@c ===beg===
@c plot2d (sin(x), [x, -%pi, %pi])$
@c ===end===
@example
(%i1) plot2d (sin(x), [x, -%pi, %pi])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting6,8cm}
@end ifnotinfo

@c If the functions grows too fast, it might be necessary to limit the
@c values in the vertical axis using the y option:

W@"achst die Funktion sehr schnell, kann es notwendig sein, die Werte auf der
vertikalen Achse mit der Grafikoption @code{y} zu begrenzen.

@c ===beg===
@c plot2d (sec(x), [x, -2, 2], [y, -20, 20])$
@c ===end===
@example
@group
(%i1) plot2d (sec(x), [x, -2, 2], [y, -20, 20])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting7,8cm}
@end ifnotinfo

@c The aspect of the plot might be different depending on the plotting
@c program used. For instance, when the plot box is disable, Xmaxima will
@c plot the axes using arrows:

Die Ansicht eines Graphen kann sich f@"ur verschiedene Grafikprogramme
unterscheiden.  In Xmaxima bewirkt die Grafikoption @code{[box, false]}, das die
Koordinatenachsen mit Pfeilen dargestellt werden.

@c ===beg===
@c plot2d ( x^2 - 1, [x, -3, 3], [box, false], grid2d,
@c      [yx_ratio, 1], [axes, solid], [xtics, -2, 4, 2],
@c      [ytics, 2, 2, 6], [label, ["x", 2.9, -0.3],
@c      ["x^2-1", 0.1, 8]], [title, "A parabola"])$
@c ===end===
@example
(%i1) plot2d ( x^2 - 1, [x, -3, 3], [box, false], grid2d,
      [yx_ratio, 1], [axes, solid], [xtics, -2, 4, 2],
      [ytics, 2, 2, 6], [label, ["x", 2.9, -0.3],
      ["x^2-1", 0.1, 8]], [title, "A parabola"])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting8,8cm}
@end ifnotinfo

@c A plot with a logarithmic scale:

Ein Graph mit einer logarithmischen Skala:

@c ===beg===
@c plot2d (exp(3*s), [s, -2, 2], logy)$
@c ===end===
@example
(%i1) plot2d (exp(3*s), [s, -2, 2], logy)$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting9,8cm}
@end ifnotinfo

@c Plotting functions by name:

Graphen von Funktionen, deren Namen als Argumente @"ubergeben werden.

@c ===beg===
@c F(x) := x^2 $
@c :lisp (defun |$g| (x) (m* x x x))
@c H(x) := if x < 0 then x^4 - 1 else 1 - x^5 $
@c plot2d ([F, G, H], [u, -1, 1], [y, -1.5, 1.5])$
@c ===end===
@example
(%i1) F(x) := x^2 $
@group
(%i2) :lisp (defun |$g| (x) (m* x x x))
$g
@end group
(%i2) H(x) := if x < 0 then x^4 - 1 else 1 - x^5 $
(%i3) plot2d ([F, G, H], [u, -1, 1], [y, -1.5, 1.5])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting10,8cm}
@end ifnotinfo

@c A plot of the butterfly curve, defined parametrically:

Graph einer parametrisch definierten Schmetterlingskurve.

@c ===beg===
@c r: (exp(cos(t))-2*cos(4*t)-sin(t/12)^5)$
@c plot2d([parametric, r*sin(t), r*cos(t), [t, -8*%pi, 8*%pi]])$
@c ===end===
@example
(%i1) r: (exp(cos(t))-2*cos(4*t)-sin(t/12)^5)$
(%i2) plot2d([parametric, r*sin(t), r*cos(t), [t, -8*%pi, 8*%pi]])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting11,8cm}
@end ifnotinfo

@c Plot of a common function together with the parametric representation of
@c a circle. The size of the plot has been adjusted with the same_xy
@c option.

Graph der Funktion @code{abs(x)} und eines parametrischen Kreises.  Das 
Seitenverh@"altnis der Grafik wurde mit den Grafikoptionen @code{same_xy}.

@c ===beg===
@c plot2d([[parametric, cos(t), sin(t), [t,0,2*%pi]], -abs(x)],
@c          [x, -sqrt(2), sqrt(2)], same_xy)$
@c ===end===
@example
@group
(%i1) plot2d([[parametric, cos(t), sin(t), [t,0,2*%pi]], -abs(x)],
         [x, -sqrt(2), sqrt(2)], same_xy)$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting12,8cm}
@end ifnotinfo

@c A plot of a discrete set of points, defining x and y coordinates separately:

Graph f@"ur diskrete Punkte.  Die Punkte sind in zwei separaten Listen jeweils 
f@"ur die x- und y-Koordinaten angegeben.  Standardm@"a@ss{}ig werden die Punkte
mit einer Linie verbunden.

@c ===beg===
@c plot2d ([discrete, makelist(i*%pi, i, 1, 5),
@c                            [0.6, 0.9, 0.2, 1.3, 1]])$
@c ===end===
@example
(%i1) plot2d ([discrete, makelist(i*%pi, i, 1, 5),
                            [0.6, 0.9, 0.2, 1.3, 1]])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting14,8cm}
@end ifnotinfo

@c In this example, a table with three columns is saved in a file
@c ``data.txt'' which is then read and the second and third column are
@c plotted on the two axes:

In diesem Beispiel wird eine Tabelle mit drei Spalten in eine Datei 
@code{data.txt} gespeichert.  Die Datei wird gelesen und die zweite und dritte
Spalte werden gezeichnet.

@c ===beg===
@c with_stdout ("data.txt", for x:0 thru 10 do
@c                              print (x, x^2, x^3))$
@c data: read_matrix ("data.txt")$
@c plot2d ([discrete, transpose(data)[2], transpose(data)[3]],
@c   [style,points], [point_type,diamond], [color,red])$
@c ===end===
@example
@group
(%i1) with_stdout ("data.txt", for x:0 thru 10 do
                             print (x, x^2, x^3))$
@end group
(%i2) data: read_matrix ("data.txt")$
@group
(%i3) plot2d ([discrete, transpose(data)[2], transpose(data)[3]],
  [style,points], [point_type,diamond], [color,red])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting15,8cm}
@end ifnotinfo

@c A plot of experimental data points together with the theoretical
@c function that predicts the data:

Graph von experimentellen Datenpunkten zusammen mit einer theoretischen 
Funktion, die die Daten beschreibt.

@c ===beg===
@c xy: [[10, .6], [20, .9], [30, 1.1], [40, 1.3], [50, 1.4]]$
@c plot2d([[discrete, xy], 2*%pi*sqrt(l/980)], [l,0,50],
@c         [style, points, lines], [color, red, blue],
@c         [point_type, asterisk],
@c         [legend, "experiment", "theory"],
@c         [xlabel, "pendulum's length (cm)"],
@c         [ylabel, "period (s)"])$
@c ===end===
@example
(%i1) xy: [[10, .6], [20, .9], [30, 1.1], [40, 1.3], [50, 1.4]]$
@group
(%i2) plot2d([[discrete, xy], 2*%pi*sqrt(l/980)], [l,0,50],
        [style, points, lines], [color, red, blue],
        [point_type, asterisk],
        [legend, "experiment", "theory"],
        [xlabel, "pendulum's length (cm)"],
        [ylabel, "period (s)"])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting16,8cm}
@end ifnotinfo
@end deffn

@c --- 05.11.2010 DK -----------------------------------------------------------
@anchor{plot3d}
@deffn {Funktion} plot3d (@var{expr}, @var{x_range}, @var{y_range}, @dots{}, @var{options}, @dots{})
@deffnx {Funktion} plot3d ([@var{expr_1}, @dots{}, @var{expr_n}], @var{x_range}, @var{y_range}, @dots{}, @var{options}, @dots{})

@c Displays a plot of one or more surfaces defined as functions of two
@c variables or in parametric form.

Zeichnet einen Graph mit einer oder mehreren Fl@"achen, die als eine Funktion
von zwei Variablen oder in parametrischer Form definiert sind.

@c The functions to be plotted may be specified as expressions or function
@c names. 
@c The mouse can be used to rotate the plot looking at the surface
@c from different sides.

Die zu zeichnenden Funktionen werden als Ausdr@"ucke oder mit ihrem Namen als 
Argumente @"ubergeben.  Mit der Maus kann der Graph rotiert werden, 
um die Fl@"ache aus verschiedenen Blickwinkeln zu betrachten.

@c See also the section about Plotting Options.

Siehe auch das Kapitel @nrefdot{Grafikoptionen}

Beispiele:

@c Plot of a common function:

Graph einer einfachen Funktion.

@c ===beg===
@c plot3d (u^2 - v^2, [u, -2, 2], [v, -3, 3], [grid, 100, 100],
@c         [mesh_lines_color,false])$
@c ===end===
@example
@group
(%i1) plot3d (u^2 - v^2, [u, -2, 2], [v, -3, 3], [grid, 100, 100],
        [mesh_lines_color,false])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting17,8cm}
@end ifnotinfo

@c Use of the z option to limit a function that goes to infinity (in this
@c case the function is minus infinity on the x and y axes); this also
@c shows how to plot with only lines and no shading:

Mit der Grafikoption @code{z} wird der Wertebereich der z-Achse begrenzt. 
Dieses Beispiel zeigt den Graph ohne F@"arbung der Fl@"ache.

@c ===beg===
@c plot3d ( log ( x^2*y^2 ), [x, -2, 2], [y, -2, 2], [z, -8, 4],
@c          [palette, false], [color, magenta, blue])$
@c ===end===
@example
(%i1) plot3d ( log ( x^2*y^2 ), [x, -2, 2], [y, -2, 2], [z, -8, 4],
               [palette, false], [color, magenta, blue])$
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting18,10cm}
@end ifnotinfo

@c The infinite values of z can also be avoided by choosing a grid that
@c does not fall on any asymptotes; next example also shows how to change
@c the palette and how to show the color bar that relates the colors used with
@c the values of the z variable:

Unendlich gro@ss{}e Werte der z-Koordinate k@"onnen auch durch Wahl eines 
Gitters vermieden werden, das nicht mit einer der Asymptoten zusammenf@"allt. 
Das Beispiel zeigt zudem die Nutzung einer Palette.

@c ===beg===
@c plot3d (log (x^2*y^2), [x, -2, 2], [y, -2, 2],[grid, 29, 29],
@c       [palette, [gradient, red, orange, yellow, green]],
@c       color_bar, [xtics, 1], [ytics, 1], [ztics, 4],
@c       [color_bar_tics, 4])$
@c ===end===
@example
@group
(%i1) plot3d (log (x^2*y^2), [x, -2, 2], [y, -2, 2],[grid, 29, 29],
       [palette, [gradient, red, orange, yellow, green]],
       color_bar, [xtics, 1], [ytics, 1], [ztics, 4],
       [color_bar_tics, 4])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting19,8cm}
@end ifnotinfo

@c Two surfaces in the same plot. Ranges specific to one of the surfaces can
@c be given by placing the expression and the ranges inside a common list;
@c in this example each surface is defined in a domain different from the
@c domain of the complete plot.
@c Two surfaces in the same plot, sharing the same domain; in gnuplot the
@c two surfaces will use the same palette:

Graph mit zwei Fl@"achen mit verschiedenen Wertebereichen.

@c ===beg===
@c plot3d ([[-3*x - y, [x, -2, 2], [y, -2, 2]],
@c    4*sin(3*(x^2 + y^2))/(x^2 + y^2), [x, -3, 3], [y, -3, 3]],
@c    [x, -4, 4], [y, -4, 4])$
@c ===end===
@example
@group
(%i1) plot3d ([[-3*x - y, [x, -2, 2], [y, -2, 2]],
   4*sin(3*(x^2 + y^2))/(x^2 + y^2), [x, -3, 3], [y, -3, 3]],
   [x, -4, 4], [y, -4, 4])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting20,8cm}
@end ifnotinfo

@c Plot of a Klein bottle, defined parametrically:

Graph der kleinschen Flasche, die parametrisch definiert ist.

@c ===beg===
@c expr_1: 5*cos(x)*(cos(x/2)*cos(y)+sin(x/2)*sin(2*y)+3)-10$
@c expr_2: -5*sin(x)*(cos(x/2)*cos(y)+sin(x/2)*sin(2*y)+3)$
@c expr_3: 5*(-sin(x/2)*cos(y)+cos(x/2)*sin(2*y))$
@c plot3d ([expr_1, expr_2, expr_3], [x, -%pi, %pi],
@c         [y, -%pi, %pi], [grid, 50, 50])$
@c ===end===
@example
(%i1) expr_1: 5*cos(x)*(cos(x/2)*cos(y)+sin(x/2)*sin(2*y)+3)-10$
(%i2) expr_2: -5*sin(x)*(cos(x/2)*cos(y)+sin(x/2)*sin(2*y)+3)$
(%i3) expr_3: 5*(-sin(x/2)*cos(y)+cos(x/2)*sin(2*y))$
@group
(%i4) plot3d ([expr_1, expr_2, expr_3], [x, -%pi, %pi],
        [y, -%pi, %pi], [grid, 50, 50])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting21,8cm}
@end ifnotinfo

@c Plot of a spherical harmonic, using of the predefined transformations,
@c @code{spherical_to_xyz}, to transform from spherical to rectangular
@c coordinates. See the documentation for @code{spherical_to_xyz}.

Graph einer Kugelfunktion, die vordefinierte Koordinatentransformation
@mref{spherical_to_xyz} wird verwendet, um von Kugelkoordinaten in ein 
kartesisches Koordinatensystem zu transformieren.

@c ===beg===
@c plot3d (sin(2*theta)*cos(phi), [theta, 0, %pi],
@c         [phi, 0, 2*%pi],
@c         [transform_xy, spherical_to_xyz], [grid,30,60],
@c    [legend,false])$
@c ===end===
@example
@group
(%i1) plot3d (sin(2*theta)*cos(phi), [theta, 0, %pi],
        [phi, 0, 2*%pi],
        [transform_xy, spherical_to_xyz], [grid,30,60],
   [legend,false])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting22,8cm}
@end ifnotinfo

@c Use of the predefined function @code{polar_to_xy} to transform from
@c cylindrical to rectangular coordinates. See the documentation for
@c @code{polar_to_xy}. This example also shows how to eliminate the
@c bounding box and the legend.

Gebrauch der vordefinierten Funktion @code{polar_to_xy}, um von
zylindrischen Koordinaten in ein kartesisches Koordinatensystem zu 
transformieren.  Siehe auch @mrefdot{polar_to_xy} Dieses Beispiel zeigt auch 
wie der Rahmen und die Legende entfernt werden k@"onnen.

@c ===beg===
@c plot3d (r^.33*cos(th/3), [r,0,1], [th,0,6*%pi], [box, false],
@c    [grid, 12, 80], [transform_xy, polar_to_xy], [legend, false])$
@c ===end===
@example
@group
(%i1) plot3d (r^.33*cos(th/3), [r,0,1], [th,0,6*%pi], [box, false],
   [grid, 12, 80], [transform_xy, polar_to_xy], [legend, false])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting23,8cm}
@end ifnotinfo

@c Plot of a sphere using the transformation from spherical to rectangular
@c coordinates.

Graph einer Kugel, wobei die Koordinatentransformation von Kugelkoordinaten in
ein kartesisches Koordinatensystem genutzt wird. 

@c ===beg===
@c plot3d ( 5, [theta, 0, %pi], [phi, 0, 2*%pi], same_xyz,
@c   [transform_xy, spherical_to_xyz], [mesh_lines_color,blue],
@c   [palette,[gradient,"#1b1b4e", "#8c8cf8"]], [legend, false])$
@c ===end===
@example
@group
(%i1) plot3d ( 5, [theta, 0, %pi], [phi, 0, 2*%pi], same_xyz,
  [transform_xy, spherical_to_xyz], [mesh_lines_color,blue],
  [palette,[gradient,"#1b1b4e", "#8c8cf8"]], [legend, false])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting24,8cm}
@end ifnotinfo

@c Definition of a function of two-variables using a matrix. Notice the
@c single quote in the definition of the function, to prevent plot3d from
@c failing when it realizes that the matrix will require integer indices.

Definition einer Funktion mit zwei Variablen als eine Matrix.  Der 
@nxref{', Quote-Operator} @code{'} in der Definition der Funktion verhindert,
das @code{plot3d} fehlschl@"agt, wenn die Argumente keine ganze Zahlen sind.

@c ===beg===
@c M: matrix([1,2,3,4], [1,2,3,2], [1,2,3,4], [1,2,3,3])$
@c f(x, y) := float('M [round(x), round(y)])$
@c plot3d (f(x,y), [x,1,4],[y,1,4],[grid,3,3],[legend,false])$
@c ===end===
@example
(%i1) M: matrix([1,2,3,4], [1,2,3,2], [1,2,3,4], [1,2,3,3])$
(%i2) f(x, y) := float('M [round(x), round(y)])$
@group
(%i3) plot3d (f(x,y), [x,1,4],[y,1,4],[grid,3,3],[legend,false])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting25,8cm}
@end ifnotinfo

@c By setting the elevation equal to zero, a surface can be seen as a map
@c in which each color represents a different level.

Wird die H@"ohenangabe @code{elevation} auf Null gesetzt, kann die Fl@"ache als
eine Karte betrachtet werden.  Jede Farbe repr@"asentiert einen anderen Wert der
Fl@"ache.

@c ===beg===
@c plot3d (cos (-x^2 + y^3/4), [x,-4,4], [y,-4,4], [zlabel,""],
@c        [mesh_lines_color,false], [elevation,0], [azimuth,0],
@c        color_bar, [grid,80,80], [ztics,false], [color_bar_tics,1])$
@c ===end===
@example
@group
(%i1) plot3d (cos (-x^2 + y^3/4), [x,-4,4], [y,-4,4], [zlabel,""],
       [mesh_lines_color,false], [elevation,0], [azimuth,0],
       color_bar, [grid,80,80], [ztics,false], [color_bar_tics,1])$
@end group
@end example

@ifnotinfo
@image{@value{figuresfolder}/plotting26,8cm}
@end ifnotinfo

@end deffn

@c --- 05.11.2010 DK -----------------------------------------------------------
@anchor{plot_options}
@defvr {Systemvariable} plot_options

@c Elements of this list state the default options for plotting.
@c If an option is present in a @code{plot2d} or @code{plot3d} call,
@c that value takes precedence over the default option.
@c Otherwise, the value in @code{plot_options} is used.
@c Default options are assigned by @code{set_plot_option}. There are other
@c local options specific to each plotting command, and not included in
@c this list of global options.

Die Elemente dieser Liste definieren die Standardwerte f@"ur die Ausgabe von
Graphen.  Ist einer der Werte ein Argument der Funktionen @code{plot2d} oder
@code{plot3d}, wird der Standardwert @"uberschrieben.  Die Standardwerte
k@"onnen mit der Funktion @code{set_plot_option} gesetzt werden.  Einige
Grafikoptionen sind nicht in der Liste @code{plot_options} enthalten.

@c Each element of @code{plot_options} is a list of two or more items.  The
@c first item is the name of the option, and the remainder comprises the
@c value or values assigned to the option.  In some cases, the assigned
@c value is a list, which may include several items.

Jedes Element der Liste @code{plot_options} ist eine Liste mit zwei oder
mehr Eintr@"agen.  Der erste Eintrag ist der Name der Grafikoption.  Die 
weiteren Eintr@"age sind die Parameter der Option.  In einigen F@"allen kann 
der Parameter einer Option wiederum eine Liste sein.

@c See also @code{set_plot_option}, @code{get_option} and the section on
@c Plotting Options.

Siehe auch @mrefcomma{set_plot_option} @mref{get_plot_option} und das 
Kapitel @nrefdot{Grafikoptionen}
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{set_plot_option}
@deffn {Funktion} set_plot_option (@var{option})

@c Accepts most of the options listed in the section Plotting Options, and
@c saves them into the global variable @code{plot_options}.
@c @code{set_plot_option} evaluates its argument and returns the complete
@c list @code{plot_options} (after modifying the option given).

Akzeptiert die meisten der Optionen, die im Kapitel Grafikoptionen aufgelistet
sind und speichert diese in der globalen Variable @code{plot_options}.
@code{set_plot_options} wertet die Argumente aus und gibt die vollst@"andige
Liste @code{plot_optons} zur@"uck.

@c See also @code{plot_options}, @code{get_option} and the section on
@c Plotting Options.

Siehe auch @mrefcomma{plot_options} @mref{get_plot_option} und das Kapitel
@nrefdot{Grafikoptionen}

Beispiele:

@c Modification of the @code{grid} values.

Setze einen neue Werte f@"ur die Grafikoption @code{grid}.

@c ===beg===
@c set_plot_option ([grid, 30, 40]);
@c ===end===
@example
(%i1) set_plot_option ([grid, 30, 40]);
@group
(%o1) [[t, - 3, 3], [grid, 30, 40], [transform_xy, false], 
[run_viewer, true], [axes, true], [plot_format, gnuplot_pipes], 
[color, blue, red, green, magenta, black, cyan], 
[point_type, bullet, circle, plus, times, asterisk, box, square, 
triangle, delta, wedge, nabla, diamond, lozenge], 
[palette, [hue, 0.25, 0.7, 0.8, 0.5], 
[hue, 0.65, 0.8, 0.9, 0.55], [hue, 0.55, 0.8, 0.9, 0.4], 
[hue, 0.95, 0.7, 0.8, 0.5]], [gnuplot_term, default], 
[gnuplot_out_file, false], [nticks, 29], [adapt_depth, 5], 
[gnuplot_preamble, ], [gnuplot_default_term_command, 
set term pop], [gnuplot_dumb_term_command, set term dumb 79 22], 
[gnuplot_ps_term_command, set size 1.5, 1.5;set term postscript \
eps enhanced color solid 24], [plot_realpart, false]]
@end group
@end example
@end deffn

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{spherical_to_xyz}
@deffn {Systemfunktion} spherical_to_xyz

@c It can be given as value for the @code{transform_xy} option of
@c plot3d. Its effect will be to interpret the two independent variables
@c and the function in plot3d as the spherical coordinates of a point
@c (first, the angle with the z axis, then the angle of the xy projection
@c with the x axis and finally the distance from the origin) and transform
@c them into x, y and z coordinates.

Kann als Parameter f@"ur die Option @code{transform_xy} der Funktion 
@code{plot3d} @"ubergeben werden.  Der Parameter @code{spherical_to_xyz} 
bewirkt, dass die zwei unabh@"angigen Variablen und die Funktion beim Aufruf 
von @code{plot3d} von Kugelkoordinaten in kartesische Koordinaten umgerechnet 
werden.
@end deffn

@c -----------------------------------------------------------------------------
@node Grafikoptionen, Gnuplot Optionen, Funktionen und Variablen f@"ur die grafische Darstellung, Grafische Darstellung
@section Grafikoptionen
@c -----------------------------------------------------------------------------

@c All options consist of a list starting with one of the keywords in this
@c section, followed by one or more values. Most of the options can be used
@c in any of the plotting commands (@var{plot2d}, @var{plot3d}, @var{contour_plot},
@c @var{implicit_plot}) or in the function @var{set_plot_option}; the
@c exceptions will be specified in the following list.

Die Grafikoptionen bestehen aus einer Liste, die mit einem Schl@"usselwort 
beginnt und ein oder mehrere Parameter enth@"alt.  Die meisten 
Optionen k@"onnen mit den Funktionen @code{plot2d}, @code{plot3d}, 
@code{contour_plot} oder @code{implicit_plot} genutzt und mit der Funktion 
@code{set_plot_option} gesetzt werden.  Auf Ausnahmen wird im Folgenden 
hingewiesen.

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{adapt_depth}
@defvr {Grafikoption} adapt_depth [adapt_depth, @var{integer}]
Standardwert: @code{5}

@c The maximum number of splittings used by the adaptive plotting routine.

Die maximale Zahl an Teilungen von Intervallen, die der adaptive Algorithmus 
f@"ur das Zeichnen eines Graphen vornimmt.  Zusammen mit der Grafikoption
@mref{nticks} hat diese Grafikoption Einfluss darauf, wie glatt der Graph
gezeichnet wird.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{axes}
@defvr {Grafikoption} axes [axes, @var{symbol}]
Standardwert: @code{true}

@c Where @var{symbol} can be either @code{true}, @code{false}, @code{x} or
@c @code{y}.  If @code{false}, no axes will be shown; if equal to @code{x}
@c or @code{y} only the x or y axis will be shown, and if it is equal to
@c @code{true}, both axes will be shown. This option is used only by plot2d
@c and implicit_plot.

@code{symbol} kann einen der Werte @code{true}, @code{false}, @code{x} oder
@code{y} annehmen.  Ist der Wert @code{false}, werden keine Achsen gezeichnet.  
Mit @code{x} oder @code{y} werden nur die x- oder nur die y-Achse gezeichnet.  
Mit @code{true} werden beide Achsen gezeichnet.  Diese Option wird nur von den
Funktionen @mref{plot2d} und @mref{implicit_plot} beachtet.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{azimuth}
@defvr {Grafikoption} azimuth [azimuth, @var{number}]
Standardwert: @code{30}

@c A plot3d plot can be thought of as starting with its x and y axis
@c in the horizontal and vertical axis, as in plot2d, and the z axis
@c coming out of the paper perpendicularly. The z axis is then rotated
@c around the x axis an angle equals to @code{elevation} and then the xy
@c plane is rotated around the new z axis an angle @code{azimuth}. This
@c option sets the value for the azimuth, in degrees.

Setzt den Wert des Azimutwinkels in Grad f@"ur die Ansicht einer 
dreidimensionalen Grafik.  Siehe auch @mrefdot{elevation}
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{plot_option_box}
@defvr {Grafikoption} box [box, @var{symbol}]
Standardwert: @code{true}

@c If set to @code{true}, a bounding box will be drawn for the plot; if set
@c to @code{false}, no box will be drawn.

Hat die Grafikoption @code{box} den Wert @code{true}, erh@"alt die Grafik einen
Rahmen.  Ist der Wert @code{false}, wird kein Rahmen gezeichnet.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{color}
@defvr {Grafikoption} color [color, @var{color_1}, @dots{}, @var{color_n}]
Standardwert: @code{[blue, red, green, magenta, black, cyan]}

@c In plot2d and implicit_plot, it defines the color (or colors) for the
@c various curves. In plot3d, it defines the colors used for the mesh lines
@c of the surfaces, when no palette is being used; one side of the surface
@c will have color @var{color_1} and the other @var{color_2} (or the same
@c color if there is only one color).

Wenn die Funktionen @mref{plot2d} oder @mref{implicit_plot} mehrere Graphen
zeichnen, definiert die Grafikoption @code{color} die Farben der einzelnen 
Graphen.  F@"ur einen 3D-Graphen mit der Funktion @mref{plot3d} definiert die
Grafikoption @code{color} die Farbe der Fl@"achen.

@c If there are more curves or surfaces than colors, the colors will be repeated in
@c sequence. When using gnuplot, the colors could be: blue, red, green,
@c magenta, black, cyan or black; in xmaxima the colors can be those or a
@c string starting with the character # and followed by six hexadecimal
@c digits: two for the red component, two for green component and two for
@c the blue component. If given the name of an unknown color, black will be
@c used instead.

Gibt es mehr Kurven oder Fl@"achen als Farben, werden die Farben wiederholt.
Im Grafikformat Gnuplot k@"onnen nur die Farben @code{blue}, @code{red}, 
@code{green}, @code{magenta}, @code{black}, @code{cyan} verwendet werden.  Im 
Grafikformat Xmaxima k@"onnen die Farben auch als eine Zeichenkette angegeben 
werden, die mit dem Zeichen # beginnt und auf dem sechs hexadezimale Zahlenwerte
folgen.  Je zwei Werte bezeichnen die rote, gr@"une und blaue Komponente der 
Farbe.

Siehe auch @mrefdot{style}
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{colorbox}
@defvr {Grafikoption} colorbox [colorbox, @var{symbol}]
Standardwert: @code{false}

@c Where @var{symbol} can be either @code{true} or @code{false}. If
@c @code{true}, whenever plot3d uses a palette of different colors to
@c represent the different values of z, a box will be shown on the right,
@c indicating the colors used according to the scale of values of z. This
@c option does not work in xmaxima.

Hat die Grafikoption @code{colorbox} den Wert @code{true}, wird immer dann,
wenn das Grafikkommando @mref{plot3d} eine Palette mit verschiedenen Farben
nutzt, um die z-Werte darzustellen, eine Legende mit den Farben und den
dazugeh@"orenden z-Werten angezeigt.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{elevation}
@defvr {Grafikoption} elevation [elevation, @var{number}]
Standardwert: @code{60}

@c A plot3d plot can be thought of as starting with its x and y axis
@c in the horizontal and vertical axis, as in plot2d, and the z axis
@c coming out of the paper perpendicularly. The z axis is then rotated
@c around the x axis an angle equals to @code{elevation} and then the xy
@c plane is rotated around the new z axis an angle @code{azimuth}. This
@c option sets the value for the elevation, in degrees.

Setzt den Wert des Elevationswinkels in Grad f@"ur die Ansicht einer 
dreidimensionalen Grafik.  Siehe auch @mrefdot{azimuth}
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{grid}
@defvr {Grafikoption} grid [grid, @var{integer}, @var{integer}]
Standardwert: @code{[30, 30]}

@c Sets the number of grid points to use in the x- and y-directions
@c for three-dimensional plotting.

Setzt die Anzahl der Gitterlinen f@"ur die x- und y-Achsen einer 
dreidimensionalen Grafik.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{legend}
@defvr  {Grafikoption} legend [legend, @var{string_1}, @dots{}, @var{string_n}]
@defvrx {Grafikoption} legend [legend, @var{false}]

@c It specifies the labels for the plots when various plots are shown. If
@c there are more plots than the number of labels given, they will be
@c repeated. If given the value @code{false}, no legends will be shown. By
@c default, the names of the expressions or functions will be used, or the
@c words discrete1, discrete2, ..., for discrete sets of points. This
@c option can not be set with @var{set_plot_option}.

Definiert die Eintr@"age einer Legende, wenn mehrere Graphen gezeichnet 
werden.  Sind mehr Graphen als Eintr@"age vorhanden, werden die Eintr@"age 
wiederholt.  Hat die Grafikoption @code{legend} den Wert @code{false}, wird 
keine Legende gezeichnet.  Standardm@"a@ss{}ig werden die Ausdr@"ucke oder Namen
der Funktionen als Eintr@"age verwendet.  F@"ur diskrete Grafiken werden die 
Eintr@"age mit discrete1, discrete2, @dots{} bezeichnet.  Diese Grafikoption 
kann nicht mit der Funktion @code{set_plot_option} gesetzt werden.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{logx}
@defvr {Grafikoption} logx [logx]

@c Makes the horizontal axes to be scaled logarithmically. It can not be
@c used with @var{set_plot_option}.

Bewirkt, dass die horizontale Achse logarithmisch skaliert wird.  Diese 
Grafikoption kann nicht mit der Funktion @code{set_plot_option} gesetzt werden.
Siehe auch @mrefdot{logy}
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{logy}
@defvr {Grafikoption} logy [logy]

@c Makes the vertical axes to be scaled logarithmically. It can not be used
@c with @var{set_plot_option}.

Bewirkt, dass die vertikale Achse logarithmisch skaliert wird.  Diese 
Grafikoption kann nicht mit der Funktion @code{set_plot_option} gesetzt werden.
Siehe auch @mrefdot{logx}
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{mesh_lines_color}
@defvr {Grafikoption} mesh_lines_color [mesh_lines_color, @var{color}]
Standardwert: @code{black}

@c It sets the color used by plot3d to draw the mesh lines, when a palette is
@c being used. It accepts the same colors as for the option @code{color}
@c (see the list of allowed colors in @code{color}). It can also be given a
@c value @code{false} to eliminate completely the mesh lines.

Setzt die Farbe, die von der Funktion @code{plot3d} genutzt wird, um die
Gitterlinien zu zeichnen.  Es k@"onnen dieselben Farben verwendet werden wie 
f@"ur die Grafikoption @mrefdot{color} Hat @code{mesh_lines_color} Wert 
@code{false}, werden keine Gitterlinien gezeichnet.
@end defvr

@c --- 31.10.2010 DK -----------------------------------------------------------
@anchor{nticks}
@defvr {Grafikoption} nticks [nticks, @var{integer}]
Standardwert: @code{29}

@c When plotting functions with plot2d, it is gives the initial number of
@c points used by the adaptive plotting routine for plotting
@c functions. When plotting parametric functions with plot2d or plot3d,
@c it sets the number of points that will be shown for the plot.

Wird eine Grafik mit der Funktion @code{plot2d} gezeichnet, gibt @code{nticks}
die Anzahl der Anfangspunkte f@"ur das Zeichnen der Grafik an.  Werden 
parametrische Kurven mit den Funktionen @code{plot2d} oder @code{plot3d}
gezeichnet, ist @code{nticks} die Anzahl der Punkte, f@"ur die der Graph
gezeichnet wird.

Zusammen mit der Grafikoption @mref{adapt_depth} hat diese Grafikoption Einfluss
darauf, wie glatt der Graph gezeichnet wird.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{palette}
@defvr  {Grafikoption} palette [palette, [@var{palette_1}], @dots{}, [@var{palette_n}]]
@defvrx {Grafikoption} palette [palette, @var{false}]
@flushleft
Standardwert: @code{[hue, 0.25, 0.7, 0.8, 0.5], [hue, 0.65, 0.8, 0.9, 0.55], 
[hue, 0.55, 0.8, 0.9, 0.4], [hue, 0.95, 0.7, 0.8, 0.5]}
@end flushleft

@c It can consist of one palette or a list of several palettes. Each
@c palette is a list with a keyword followed by four numbers. The first
@c three numbers, which must be between 0 and 1, define the hue, saturation
@c and value of a basic color to be assigned to the minimum value of z. The
@c keyword specifies which of the three attributes (hue, saturation or
@c value) will be increased according to the values of z. The last number
@c indicates the increase corresponding to the maximum value of z. That
@c last number can be bigger than 1 or negative; the corresponding values
@c of the modified attribute will be rounded modulo 1.

Eine Palette kann aus einer oder einer Liste mit mehreren Paletten bestehen.  
Jede Palette beginnt mit einem Schl@"usselwort, worauf 4 Zahlen folgen.  Die 
ersten drei Zahlen haben Werte zwischen 0 und 1.  Diese definieren den Farbton 
@code{hue}, die S@"attigung @code{saturation} und die Grundfarbe @code{value}, 
die der kleinste z-Wert erh@"alt.  Die Schl@"usselworte @code{hue}, 
@code{saturation} und @code{value} spezifizieren, welches der drei Attribute mit
dem Wert von z ge@"andert werden.  Der letzte Wert der Liste, spezifiziert, 
welcher Wert zum gr@"o@ss{}ten z-Wert geh@"ort.  Dieser gr@"o@ss{}te Wert kann
gr@"o@ss{}er als 1 und auch negativ sein.  Die Werte der modifizierten 
Attribute werden Modulo 1 gerundet.

@c Gnuplot only uses the first palette in the list; xmaxima will use the
@c palettes in the list sequentially, when several surfaces are plotted
@c together; if the number of palettes is exhausted, they will be repeated
@c sequentially.

Gnuplot verwendet nur die erste Palette in einer Liste mit Paletten.  Xmaxima 
nutzt alle Paletten nacheinander, wenn mehrere Fl@"achen gezeichnet werden.  
Sind nicht gen@"ugend Paletten vorhanden, werden die Paletten wiederholt.

@c The color of the mesh lines will be given by the option
@c @code{mesh_lines_color}.  If @code{palette} is given the value
@c @code{false}, the surfaces will not be shaded but represented with a
@c mesh of curves only. In that case, the colors of the lines will be
@c determined by the option @code{color}.

Die Farbe der Gitterlinien wird mit der Option @mref{mesh_lines_color}@ 
angegeben.  Hat @code{palette} den Wert @code{false}, werden die Fl@"achen nicht
gef@"arbt, sondern als ein Gitternetz gezeichnet.  Die Farbe der Gitterlinien
wird in diesem Fall mit der Grafikoption @mref{color} festgelegt.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{plot_format}
@defvr {Grafikoption} plot_format [plot_format, @var{format}]
Standardwert: @code{gnuplot_pipes}

@c It sets the format to be used for plotting.
@c Where @var{format} is one of the following: gnuplot, xmaxima, mgnuplot or
@c gnuplot_pipes.

Setzt das Grafikformat f@"ur die Ausgabe einer Grafik.  @code{format} kann die 
Werte @code{gnuplot}, @code{xmaxima}, @code{mgnuplot} oder @code{gnuplot_pipes}
annehmen.  Siehe das Kapitel @nrefdot{Grafikformate}
@end defvr

@c --- 16.10.2011 DK -----------------------------------------------------------
@anchor{plot_realpart}
@defvr {Grafikoption} plot_realpart [plot_realpart, @var{symbol}]
Standardwert: @code{false}

@c When set to @code{true}, the functions to be plotted will be considered
@c as complex functions whose real value should be plotted; this is
@c equivalent to plotting @code{realpart(@var{function})}. If set to
@c @code{false}, nothing will be plotted when the function does not give a
@c real value. For instance, when @code{x} is negative, @code{log(x)} gives
@c a complex value, with real value equal to @code{log(abs(x))}; if
@c @code{plot_real_part} were @code{true}, @code{log(-5)} would be plotted
@c as @code{log(5)}, while nothing would be plotted if
@c @code{plot_real_part} were @code{false}.

Hat @code{plot_realpart} den Wert @code{true}, werden Funktionen als komplex
angenommen und der Realteil wird gezeichnet.  Das entspricht dem Aufruf der
Grafikfunktion mit dem Ausdruck @code{realpart(@var{function})}.  Hat
@code{plot_realpart} den Wert @code{false}, wird keine Grafik gezeichnet, wenn
die Funktion keinen Realteil hat.  Zum Beispiel ist @code{log(x)} komplex, wenn
@var{x} negativ ist.  Hat @code{plot_realpart} den Wert @code{true}, wird der
Wert @code{log(-5)} als @code{log(5)} gezeichnet.  Hat @code{plot_realpart}
den Wert @code{false} wird kein Wert gezeichnet.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{point_type}
@defvr {Grafikoption} point_type [point_type, @var{type_1}, @dots{}, @var{type_n}]
@flushleft
Standardwert: @code{[bullet, circle, plus, times, asterisk, box, square, 
triangle, delta, wedge, nabla, diamond, lozenge]}
@end flushleft

@c In gnuplot, each set of points to be plotted with the style ``points''
@c or ``linespoints'' will be represented with objects taken from this
@c list, in sequential order. If there are more sets of points than objects
@c in this list, they will be repeated sequentially.
@c The possible objects that can be used are: bullet, circle, plus, times,
@c asterisk, box, square,triangle, delta, wedge, nabla, diamond or lozenge

Werden im Grafikformat Gnuplot Punkte mit den Stilen @code{points} oder
@code{linespoints} gezeichnet, werden die Symbole f@"ur die einzelnen 
Datens@"atze nacheinander der Liste @code{point_type} entnommen.  Gibt es
mehr Datens@"atze als Symbole, werden diese wiederholt.  Siehe auch 
@mrefdot{style}
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{psfile}
@defvr {Grafikoption} psfile [psfile, @var{filename}]

@c Saves the plot into a Postscript file with name equal to @var{string},
@c rather than showing it in the screen. By default, the file will be
@c created in the directory defined by the variable @var{maxima_tempdir};
@c the value of that variable can be changed to save the file in a
@c different directory.

Speichert die Grafik in eine Postscript-Datei mit den Namen @var{filename}.  Die
Grafik wird nicht auf dem Bildschirm ausgegeben.  Standardm@"a@ss{}ig wird die 
Datei in dem Ordner abgespeichert, dessen Namen in der Optionsvariablen
@code{maxima_tempdir} enthalten ist.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{run_viewer}
@defvr {Grafikoption} run_viewer [run_viewer, @var{symbol}]

@c DOES FALSE IMPLY THE OUTPUT FILE IS GENERATED AND NOT SHOWN ?? 
@c OR IS NOTHING GENERATED ??
Standardwert: @code{true}

@c Controls whether or not the appropriate viewer for the plot format
@c should be run.

Kontrolliert, ob die Bildschirmausgabe des Grafikformats gestartet wird.
@end defvr

@c --- 05.02.2011 DK -----------------------------------------------------------
@anchor{style}
@defvr  {Grafikoption} style [style, @var{type_1}, @dots{}, @var{type1_n}]
@defvrx {Grafikoption} style [style, [@var{style_1}], @dots{}, [@var{style_n}]]
Standardwert: @code{lines}

@c The styles that will be used for the various functions or sets of data
@c in a 2d plot.  The word @var{style} must be followed by one or more
@c styles.  If there are more functions and data sets than the styles
@c given, the styles will be repeated.  Each style can be either
@c @var{lines} for line segments, @var{points} for isolated points,
@c @var{linespoints} for segments and points, or @var{dots} for small
@c isolated dots.  Gnuplot accepts also an @var{impulses} style.

Bestimmt den Stil f@"ur das Zeichnen von Funktionen oder Datens@"atzen mit der
Funktion @code{plot2d}.  Werden mehr Graphen gezeichnet, als Stile vorhanden
sind, werden diese wiederholt.  Die m@"oglichen Stile sind @code{lines} f@"ur 
Linien, @code{points} f@"ur einzelne Punkte, @code{linespoints} f@"ur Linien mit
Punkten oder @code{dots} f@"ur kleine Punkte.  Das Grafikformat Gnuplot 
akzeptiert zus@"atzlich den Stil @code{impulses}.

@c Each of the styles can be enclosed inside a list with some aditional
@c parameters. @var{lines} accepts one or two numbers: the width of the
@c line and an integer that identifies a color. The default color codes
@c are: 1: blue, 2: red, 3: magenta, 4: orange, 5: brown, 6: lime and 7:
@c aqua. If you use Gnuplot with a terminal different than X11,
@c those colors might be different; for example, if you use the option
@c [@var{gnuplot_term},@var{ps}], color index 4 will correspond to black,
@c instead of orange.

Jeder Stil kann weitere Parameter erhalten, die zusammen mit dem Stil als eine
Liste angegeben werden.  Der Stil @code{lines} akzeptiert zwei Zahlen, die die
Breite der Linie und deren Farbe angegeben.  Die Standardfarben haben die
Zahlenwerte: 1: @code{blue}, 2: @code{red}, 3: @code{magenta}, 4: @code{orange},
5: @code{brown}, 6: @code{lime} und 7: @code{aqua}.  Im Grafikformat Gnuplot 
kann die Kodierung der Farben f@"ur verschiedene Terminals abweichend sein.  
Wird zum Beispiel das Terminal [@var{gnuplot_term},@var{ps}] verwendet, 
entspricht dem Zahlenwert 4 die Farbe @code{black}.

@c @var{points} accepts one two or three parameters; the first parameter
@c is the radius of the points, the second parameter is an integer that
@c selects the color, using the same code used for @var{lines} and the
@c third parameter is currently used only by Gnuplot and it corresponds
@c to several objects instead of points. The default types of
@c objects are: 1: filled circles, 2: open circles, 3: plus signs, 4: x,
@c 5: *, 6: filled squares, 7: open squares, 8: filled triangles, 9: open
@c triangles, 10: filled inverted triangles, 11: open inverted triangles,
@c 12: filled lozenges and 13: open lozenges.

Der Stil @code{points} akzeptiert zwei oder drei Parameter.  Der erste Parameter
ist der Radius des Punktes.  Der zweite Parameter ist eine Zahl, der wie
f@"ur den Stil @code{lines} eine Farbe angibt.  Der dritte Parameter ist eine 
Zahl, mit der im Grafikformat Gnuplot die folgenden Zeichen f@"ur die 
Darstellung der Punkte ausgew@"ahlt werden k@"onnen: 1: @code{bullet}, 
2: @code{circle}, 3: @code{plus}, 4: @code{times}, 5: @code{asterisk}, 
6: @code{box}, 7: @code{square}, 8: @code{triangle}, 9: @code{delta}, 
10: @code{wedge}, 11: @code{nabla}, 12: @code{diamond}, 13: @code{lozenge}.

@c @var{linesdots} accepts up to four parameters: line width, points
@c radius, color and type of object to replace the points.

Der Stil @code{linesdots} akzeptiert bis zu vier Parameter: die Breite der 
Linie, den Radius der Punkte, die Farbe und das Symbol f@"ur das Zeichnen der
Punkte.

@c See also @code{color} and @code{point_type}.

Siehe auch die Grafikoptionen @mref{color} und @mrefdot{point_type}
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{t}
@defvr {Grafikoption} t [t, @var{min}, @var{max}]

@c Default range for parametric plots.

Bestimmt den Wertebereich f@"ur das Zeichnen einer parametrischen Kurve mit der
Funktion @mrefdot{plot2d}  Die Variable einer parametrischen Kurve muss mit
@code{t} bezeichnet werden.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{transform_xy}
@defvr {Grafikoption} transform_xy [transform_xy, @var{symbol}]
Standardwert: @code{false}

@c Where @var{symbol} is either @code{false} or the result obtained by
@c using the function @code{transform_xy}. If different from @code{false},
@c it will be used to transform the 3 coordinates in plot3d.

@var{symbol} hat entweder den Wert @code{false} oder ist das Ergebnis der 
Funktion @mrefdot{make_transform}  Wenn verschieden von @code{false}, wird die
Funktion genutzt, um die drei Koordinaten einer dreidimensionalen Grafik zu
transformieren.

Siehe auch @mref{polar_to_xy} und @mrefdot{spherical_to_xyz} f@"ur bereits
vordefinierte Koordinatentransformationen.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{x}
@defvr {Grafikoption} x [x, @var{min}, @var{max}]

@c When used as the first option in a 2d-plotting command (or any of the
@c first two in plot3d), it indicates that the first independent variable
@c is x and it sets its range. It can also be used again after the first
@c option (or after the second option in plot3d) to define the effective
@c horizontal domain that will be shown in the plot.

Die erste Grafikoption der Funktionen @code{plot2d} oder @code{plot3d} 
bezeichnet die un@-ab@-h@"ang@-ige Variable.  Die unabh@"angige Variable muss 
nicht mit @code{x} bezeichnet werden, sondern kann ein beliebiges von @code{x} 
verschiedenes Symbol sein.  Die Werte @var{min} und @var{max} geben in diesem
Fall den Wertebereich der unabh@"angigen Variablen an.  Die Grafikoption 
@code{x} kann ein zweites Mal angegeben werden, um den Bereich f@"ur die x-Achse
festzulegen.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{xlabel}
@defvr {Grafikoption} xlabel [xlabel, @var{string}]
Standardwert: @code{"x"}

@c Specifies the @var{string} that will label the first axis; if this
@c option is not used, that label will be the name of the independent
@c variable, when plotting functions with plot2d or implicit_plot, or the
@c name of the first variable, when plotting surfaces with plot3d or
@c contours with contour_plot, or the first expression in the case of a
@c parametric plot. It can not be used with @var{set_plot_option}.

Legt die Zeichenkette @var{string} fest, mit der die x-Achse der Grafik 
bezeichnet wird.  Der Standardwert ist @code{"x"} oder der Name der ersten
unabh@"angigen Variablen.  Diese Grafikoption kann nicht mit dem Kommando 
@code{set_plot_option} gesetzt werden.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{y}
@defvr {Grafikoption} y [y, @var{min}, @var{max}]

@c When used as one of the first two options in plot3d, it indicates that
@c one of the independent variables is y and it sets its range. Otherwise,
@c It defines the effective domain of the second variable that will be
@c shown in the plot.

F@"ur einen dreidimensionalen Graphen legt diese Grafikoption die zweite 
unabh@"angige Variable fest.  Die unabh@"angige Variable muss nicht mit @code{y} 
bezeichnet werden, sondern kann ein beliebiges von @code{y} verschiedenes Symbol
sein.  Die Werte @var{min} und @var{max} geben in diesem Fall den Wertebereich 
der Variablen an.  Wird die Grafikoption f@"ur einen zweidimensionalen Graphen 
verwendet oder f@"ur einen dreidimensionalen Graphen ein zweites Mal eingesetzt, 
dann wird der Bereich f@"ur die y-Achse festgelegt.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{ylabel}
@defvr {Grafikoption} ylabel [ylabel, @var{string}]
Standardwert: @code{"y"}

@c Specifies the @var{string} that will label the second axis; if this
@c option is not used, that label will be ``y'', when plotting functions
@c with plot2d or implicit_plot, or the name of the second variable, when
@c plotting surfaces with plot3d or contours with contour_plot, or the
@c second expression in the case of a parametric plot. It can not be used
@c with @var{set_plot_option}.

Legt die Zeichenkette @var{string} fest, mit der die y-Achse der Grafik 
bezeichnet wird.  Der Standardwert ist @code{"y"} oder f@"ur den Fall einer
dreidimensionalen Grafik der Name der zweiten unabh@"angigen Variablen.  Diese 
Grafikoption kann nicht mit dem Kommando @code{set_plot_option} gesetzt werden.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{z}
@defvr {Grafikoption} z [z, @var{min}, @var{max}]

@c Used in plot3d to set the effective range of values of z that will be
@c shown in the plot.

Legt f@"ur eine dreidimensionalen Grafik den Bereich f@"ur die z-Achse fest.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{zlabel}
@defvr {Grafikoption} zlabel [zlabel, @var{string}]
Standardwert: @code{"z"}

@c Specifies the @var{string} that will label the third axis, when using
@c plot3d. If this option is not used, that label will be ``z'', when
@c plotting surfaces, or the third expression in the case of a parametric
@c plot. It can not be used with @var{set_plot_option} and it will be
@c ignored by plot2d and implicit_plot.

Legt die Zeichenkette @var{string} fest, mit der die z-Achse der Grafik 
bezeichnet wird.  Der Standardwert ist @code{"z"}.  Diese Grafikoption kann 
nicht mit dem Kommando @code{set_plot_option} gesetzt werden und wird von den
Funktionen @code{plot2d} sowie @code{implicit_plot} ignoriert.
@end defvr

@c -----------------------------------------------------------------------------
@node Gnuplot Optionen, Gnuplot_pipes Formatfunktionen, Grafikoptionen, Grafische Darstellung
@section Gnuplot Optionen
@c -----------------------------------------------------------------------------

@c There are several plot options specific to gnuplot. All of them consist
@c of a keyword (the name of the option), followed by a string that should
@c be a valid gnuplot command, to be passed directly to gnuplot. In most
@c cases, there exist a corresponding plotting option that will produce a
@c similar result and whose use is more recommended than the gnuplot
@c specific option.

Es gibt einige spezielle Optionen f@"ur das Grafikformat Gnuplot.  Diese 
Optionen werden mit einem Schl@"usselwort bezeichnet und zusammen mit einer 
Zeichenkette, die ein g@"ultiges Gnuplot-Kommando darstellt, an Gnuplot 
@"ubergeben.  In den meisten F@"allen gibt es eine entsprechende
Grafikoption, die ein vergleichbares Ergebnis erzeugt.  Die Grafikoptionen 
sollten den Gnuplot-Optionen vorgezogen werden.

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_term}
@defvr {Grafikoption} gnuplot_term

@c Sets the output terminal type for gnuplot.

Setzt den Terminaltyp f@"ur das Grafikformat Gnuplot.

@itemize @bullet

@c Gnuplot output is displayed in a separate graphical window.

@item @strong{default} (Standardwert)

Die Ausgabe von Gnuplot wird in einem separatem Fenster angezeigt.

@c Gnuplot output is displayed in the Maxima console by an "ASCII art" 
@c approximation to graphics.

@item @strong{dumb}

Die Ausgabe von Gnuplot wird in der Maxima Konsole mit Ascii-Zeichen angezeigt.

@c Gnuplot generates commands in the PostScript page description language.
@c If the option @code{gnuplot_out_file} is set to @var{filename}, gnuplot
@c writes the PostScript commands to @var{filename}.  Otherwise, it is
@c saved as @code{maxplot.ps} file.

@item @strong{ps}

Gnuplot generiert PostScript-Kommandos.  Mit der Grafikoption 
@code{gnuplot_out_file} werden die PostScript-Kommandos in eine Datei
@var{filename} geschrieben.  Ansonsten werden die Kommandos in die Datei
@code{maxplot.ps} geschrieben.

@c any other valid gnuplot term specification

@item Jede andere g@"ultige Gnuplot Spezifikation
@end itemize

@c Gnuplot can generate output in many other graphical formats such
@c as png, jpeg, svg etc.  To create plot in all these formats the
@c @code{gnuplot_term} can be set to any supported gnuplot term name (symbol) 
@c or even full gnuplot term specification with any valid options (string).
@c For example @code{[gnuplot_term,png]} creates output in PNG (Portable
@c Network Graphics) format while @code{[gnuplot_term,"png size 1000,1000"]}
@c creates PNG of 1000x1000 pixels size. 
@c If the option @code{gnuplot_out_file} is set to @var{filename}, gnuplot 
@c writes the output to @var{filename}. Otherwise, it is saved as 
@c @code{maxplot.@var{term}} file, where @var{term} is gnuplot 
@c terminal name.

Gnuplot kann Ausgaben in verschiedenen Formaten wie zum Beispiel PNG, JPEG, SVG
generieren.  Die verschiedenen Formate werden mit der Option @code{gnuplot_term}
angegeben.  Weiterhin kann jedes g@"ultige Kommando als Zeichenkette @"ubergeben
werden.  Zum Beispiel generiert @code{[gnuplot_term, png]} eine Grafik im 
PNG-Format.  Das Kommando @code{[gnuplot_term, "png size 1000, 1000"]} generiert
eine Grafik im PNG-Format mit dem Format 1000@ x@ 1000 Punkte.  Erh@"alt die 
Grafikoption @code{gnuplot_out_file} den Wert @var{filename}, wird die Ausgabe 
in die Datei @var{filename} geschrieben.  Ansonsten werden die Kommandos in die 
Datei @code{maxplot.@var{term}} geschrieben, wobei @var{term} das verwendete 
Grafikformat ist.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_out_file}
@defvr {Grafikoption} gnuplot_out_file

@c When used in conjunction with the @code{gnuplot_term} option, it can be
@c used to save the plot in a file, in one of the graphic formats supported
@c by Gnuplot. If you want to create a Postscript file, you can use the
@c option @code{psfile} instead, which will also work in Openmath, and does
@c the same thing with just one option.

Zusammen mit der Option @code{gnuplot_term}, kann die Ausgabe in dem angegebenen
Gnuplot-Format in eine Datei geschrieben werden.  Eine Postscript-Datei kann 
auch mit der Grafikoption @code{psfile} angegeben werden.  Die Grafikoption 
@code{psfile} funktioniert auch mit dem Grafikformat @code{xmaxima}.

@example
[gnuplot_term, png], [gnuplot_out_file, "graph3.png"]
@end example
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_pm3d}
@defvr {Grafikoption} gnuplot_pm3d

@c With a value of @code{false}, it can be used to prevent the usage of
@c PM3D mode, which is enabled by default.

Hat die Grafikoption @code{gnuplot_pm3d} den Wert @code{false}, wird der
PM3D-Modus ausgeschaltet.  Dieser Modus ist standardm@"a@ss{}ig eingeschaltet.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_preamble}
@defvr {Grafikoption} gnuplot_preamble

@c Inserts gnuplot commands before the plot is drawn. Any valid gnuplot
@c commands may be used. Multiple commands should be separated with a
@c semi-colon. The example shown produces a log scale plot. The default
@c value for @code{gnuplot_preamble} is the empty string @code{""}.

F@"ugt Gnuplot-Kommandos ein, die vor dem Zeichnen der Grafik ausgef@"uhrt 
werden.  Jedes g@"ultige Gnuplot-Kommando kann verwendet werden.  Mehrere 
Kommandos sollten mit einem Semikolon voneinander getrennt werden.  Der 
Standardwert der Option @code{gnuplot_preamble} ist eine leere Zeichenkette 
@code{""}.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_curve_titles}
@defvr {Grafikoption} gnuplot_curve_titles

@c This is an old option that has been replaced by @emph{legend} described 
@c above.

Dies ist eine veraltete Option, die von der Grafikoption @code{legend} ersetzt
wurde.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_curve_styles}
@defvr {Grafikoption} gnuplot_curve_styles

@c This is an obsolete option that has been replaced by @emph{style}.

Dies ist eine veraltete Option, die von der Grafikoption @code{style}
ersetzt wurde.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_default_term_command}
@defvr {Grafikoption} gnuplot_default_term_command

@c The gnuplot command to set the terminal type for the default
@c terminal. The default value is @code{set term pop}.

Das Gnuplot-Kommando, um den Standardtyp eines Terminals zu setzen.
Der Standardwert ist @code{set term pop}.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_dumb_term_command}
@defvr {Grafikoption} gnuplot_dumb_term_command

@c The gnuplot command to set the terminal type for the dumb terminal. The
@c default value is @code{"set term dumb 79 22"}, which makes the text
@c output 79 characters by 22 characters.

Das Gnuplot-Kommando, um die Breite und H@"ohe des Terminaltyps @code{dumb} zu
setzen.  Der Standardwert ist @code{"set term dumb 79 22"}.  Die Ausgabe hat 
eine Breite von 79 Zeichen und eine H@"ohe von 22 Zeichen.
@end defvr

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_ps_term_command}
@defvr {Grafikoption} gnuplot_ps_term_command

@c The gnuplot command to set the terminal type for the PostScript
@c terminal. The default value is @code{"set size 1.5, 1.5;set term
@c postscript eps enhanced color solid 24"}, which sets the size to 1.5
@c times gnuplot's default, and the font size to 24, among other
@c things. See the gnuplot documentation for @code{set term postscript} for
@c more information.

Das Gnuplot-Kommando, um die Parameter f@"ur eine Postscript-Terminal zu
setzen.  Ein Postscript-Terminal hat die Standardwerte @code{"set size 1.5, 1.5;
set term postscript eps enhanced color solid 24"}.  Das Terminal wird auf den 
1,5 fachen Wert des Standardwertes und die Schriftgr@"o@ss{}e auf 24 gesetzt.  
Siehe die Gnuplot-Dokumentation f@"ur eine Beschreibung weiterer Parameter, die 
f@"ur ein Postscript-Terminal gesetzt werden k@"onnen.
@end defvr

@c -----------------------------------------------------------------------------
@node Gnuplot_pipes Formatfunktionen,  , Gnuplot Optionen, Grafische Darstellung
@section Gnuplot_pipes Formatfunktionen
@c -----------------------------------------------------------------------------

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_start}
@deffn {Funktion} gnuplot_start ()

@c Opens the pipe to gnuplot used for plotting with the @code{gnuplot_pipes} 
@c format. Is not necessary to manually open the pipe before plotting.

@"Offnet eine Pipe, die im Grafikformat @code{gnuplot_pipes} f@"ur den Austausch
der Daten genutzt wird.
@end deffn

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_close}
@deffn {Funktion} gnuplot_close ()

@c Closes the pipe to gnuplot which is used with the @code{gnuplot_pipes} 
@c format.

Schlie@ss{}t die Pipe, die im Grafikformat @code{gnuplot_pipes} f@"ur den 
Austausch der Daten genutzt wird.
@end deffn

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_restart}
@deffn {Funktion} gnuplot_restart ()

@c Closes the pipe to gnuplot which is used with the @code{gnuplot_pipes}
@c format and opens a new pipe.

Schlie@ss{}t die Pipe, die im Grafikformat @code{gnuplot_pipes} f@"ur den 
Austausch der Daten genutzt wird, und @"offnet eine neue Pipe.
@end deffn

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_replot}
@deffn  {Funktion} gnuplot_replot ()
@deffnx {Funktion} gnuplot_replot (@var{string})

@c Updates the gnuplot window. If @code{gnuplot_replot} is called with a
@c gnuplot command in a string @var{s}, then @code{s} is sent to gnuplot
@c before reploting the window.

Aktualisiert die Ausgabe von Gnuplot.  Wird @code{gnuplot_replot} mit einer
Zeichenkette @var{string} aufgerufen, die Gnuplot-Kommandos enth@"alt, dann 
werden die Kommandos vor der Aktualisierung an Gnuplot gesendet.
@end deffn

@c --- 02.11.2010 DK -----------------------------------------------------------
@anchor{gnuplot_reset}
@deffn {Funktion} gnuplot_reset ()

@c Resets the state of gnuplot used with the @code{gnuplot_pipes}
@c format. To update the gnuplot window call @code{gnuplot_replot} after
@c @code{gnuplot_reset}.

Im Grafikformat @code{gnuplot_pipes} wird Gnuplot zur@"uckgesetzt.  Um die 
Anzeige zu aktualisieren, kann das Kommando @code{gnuplot_replot} nach dem 
Kommando @code{gnuplot_reset} ausgef@"uhrt werden.
@end deffn

@c --- End of file Plotting.de.texi --------------------------------------------

