DMUG-Archiv 2006

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: maßstäbliche ContourPlots

Lieber Udo, liebe Susanne, AspectRatio->Automatic setzt doch die horizontale und die vertikale Achse genau in das gewünschte Verhältnis, darunter verstand ich "maßstäblich". Also bei {x, -3, 3}, {y, 0, 2} in das Verhältnis 3 zu 1.

Wenn Du das angehängte Notebook in meiner ursprünglichen Email evaluierst, dann siehst Du 3 Graphiken.

Vergleiche die horizontale Achse der ersten mit der dritten Graphik,
sie sind optisch nicht gleich lang dargestellt. Wie erreiche ich gleiche Länge?

Oder:
Vergleiche die vertikale Achse der ersten mit der horizontalen Achse der zweiten Graphik, dann siehst Du, sie sind optisch nicht gleich lang dargestellt. Wie erreiche ich gleiche Länge?

Danke schon mal für weiter Hinweise.

MfG

Reinhard Schlosser

Udo und Susanne Krause schrieb:

Also, ohne Schreibfehler:

With[{xMin = -3, xMax = 3, yMin = 0, yMax = 2, zMin = 0, zMax = 3},
If[xMin < xMax && yMin < yMax && zMin < zMax, ContourPlot[f[x, y, 0], {x, xMin, xMax}, {y, yMin, yMax}, AspectRatio -> (yMax - yMin)/(xMax - xMin)],
  Return[$Failed]
]
]

Einen Modul zu bauen, der die variablen Werte von den fixen Werten (im Beipiel ist z fix) unterscheidet und dann richtig AspectRatio belegt ist einfach. Dazu muss man den Head f als Argument für diesen Modul zulassen und die Grenzen ebenfalls als Argumente annehmen, so, dass man die Auswertung für AspectRatio treffen kann.

Gruss Udo.

Udo und Susanne Krause wrote:

Lieber Reinhard,

wenn AspectRation nicht Automatic ist, dann wird die Länge zur Breite nicht im Verhältnis des Goldenen Schnittes gezeichnet:

With[{xMin = -3, xMax = 3, yMin = 0, yMax = 2, zMin = 0, zMax = 3},
If[xMin < xMax && yMin < yMax && zMin < zMax, ContourPlot[f[x, y, 0], {x, -3, 3}, {y, 0, 2}, AspectRatio -> (yMax - yMin)/(xMax - xMin)],
   Return[$Failed]
 ]
]

Mit den besten Grüssen
Udo.

reinhard schlosser wrote:

Liebe Liste,

ich habe eine reellwertige Funktion von drei reellen Veränderlichen f(x,y,z).

Mit ContourPlot stelle ich die Funktion auf verschieden großen Ebenen dar.
(Im Anhang befindet sich ein einfaches Beispiel.)

ContourPlot[f[x, y, 0],{x, -3, 3}, {y, 0, 2}, AspectRatio->Automatic, FrameLabel ->{"x in m", "y in m"}, PlotRange ->{{-3,3}, {0,2}, {-10,10}}] ContourPlot[f[0, y, z],{y, 0, 2}, {z, 0, 3}, AspectRatio->Automatic, FrameLabel ->{"y in m", "z in m"}, PlotRange ->{{0,2}, {0,3}, {-10,10}}] ContourPlot[f[x, 0, z],{x, -3, 3}, {z, 0, 3}, AspectRatio->Automatic, FrameLabel ->{"x in m", "z in m"}, PlotRange ->{{-3,3}, {0,3}, {-10,10}}]

Durch AspectRatio->Automatic erreiche ich, dass die horizontale zur vertikalen Achse innerhalb eines ContourPlots maßstäblich ist.

Wie erreiche ich, dass die Achsen aller ContourPlots zueinander maßstäblich sind?

Also die Achsen {x,-3,3}, {y,0,2}, {z,0,3} sollten "exakt" im Verhältnis 6 zu 2 zu 3 sein.

Bemerkung: Wenn ich eine Graphik mit der Maus markiere, ensteht ein rechteckiger Rahmen mit 8 schwarzen Kästchen. Es genügt mir nicht die Kanten dieses Rahmens mit ImageSize zu kontrollieren.
Da je nach Achsenbeschriftung die Länge der Achsen beeinflusst wird.

Nehmen wir jetzt an die einzelnen Achsen sind zueinander maßstäblich.
Wie erreiche ich es dann, dass beim Ausdrucken des Notebooks die Achsen z. B. "exakt" 12cm zu 4cm zu 6cm sind.

Danke für Eure Hilfe.






Antworten:
Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html