DMUG-Archiv 2007

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

Re: ListPlot mit unterschiedlichen Achsen links und rechts

Guten Abend Martin,

Klar, ich kann den zweiten Datensatz so umrechnen, dass er im
Zahlenbereich des ersten liegt und dann die Ticks für die rechte
Seite berechnen und explizit zeichnen. Aber gibt es da nicht etwas
einfacheres?

Man benutze etwa Scale und und beziehe geeignete Daten aus den Einzelgrafiken. Das erste Objekt

In[40]:= Clear[g1];
g1 = Graphics[{Pink, Disk[{-1, 0}, {3, 1}, {0.393, (2 - 0.393)} Pi]}];

sei ein Segment eines Ellipsoides, das zweite Objekt

In[77]:= Clear[g2];
g2 = Graphics[{Blue, Disk[{0, 0}, 0.05]}];

sei ein kleiner Kreis. Zusammen sehen die so aus:

In[79]:= Show[{g1, g2}, Frame -> True]

Man passt den kleinen Kreis in das "Maul" des
Ellipsoides ein und gibt die Skalierung schlicht im Label der
rechten y-Achse an:

In[101]:= With[{s = Dot[{-1, 1}, Last[FullOptions[g1, PlotRange]]]/
    Dot[{-1, 1}, Last[FullOptions[g2, PlotRange]]],
  d = 1.5},
 Show[{g1, Graphics[{Blue, Scale[Disk[{0, 0}, 0.05], s/d]}]},
  Frame -> True,
  FrameTicks -> {All, All, None, All},
  FrameLabel -> {x, y, None, ToString[s/d] <> " Y"},
  PlotLabel -> "Verschiedenes in einem Bild vereint"]
 ]

das kann weiter getrieben werden, Scale funktioniert für x und y unabhängig voneinander, FrameTicks können berechnet werden, ...

Gruss
Udo.

--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

Attachment: ElliKreis.jpeg
Description: JPEG image

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

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