Lieber Udo,
natürlich sollte man eine Fliesskommazahl nie auf 0.0 testen sondern immer
mit
If[Abs[#]<$MachineEpsilon, (* Then *)
(* wird wohl 0 sein *),
(* Else *)
(* ist es eher nicht *)
]
aber die Fragen war auch nicht:
"Ich will nie wieder in ContourPlot[] die Null Kontour sehen."
eine "quick and dirty" Variante sollte also ausreichen.
Ansonsten immer schön an die Murphy-Gesetze denken:
"Schreibe ein Programm das idiotensicher ist und nur ein Idiot
wird sich finden es zu benutzen."
Gruss
Jens
Udo und Susanne Krause wrote:
Hallo Andreas und Jens-Peer,
also Du hättest gern
ContourPlot[x^2 - y^2, {x, -2, 2}, {y, -2, 2},
Contours ->
Function[{min, max}, Range[min, max, 0.5] /. 0.0 -> Sequence[]]]
damit gibt es ein kleines Problem, denn Mma 7.0 (Windows, 32 Bit)
zeichnet für o = 0.1, 0.2, 0.4 oder 0.8
ContourPlot[x^2 - y^2, {x, -2, 2}, {y, -2, 2},
Contours -> Function[{min, max}, Range[min, max, o] /. 0.0 ->
Sequence[]]
]
gleichwohl eine Konturlinie bei 0, aber etwa
With[{o = 0.8},
ContourPlot[x^2 - y^2, {x, -2, 2}, {y, -2, 2},
Contours -> Function[{min, max},
Select[Range[min, max, o], (Chop[#] != 0)&]]
]
]
macht es dann richtig im Sinne von Andreas.
Gruss
Udo.